lcd12864_b.c

来自「一个51整开发板的应用(源程序电路图功能全实用给有需要的人)」· C语言 代码 · 共 88 行

C
88
字号
//=====================================================================
//               LCD12864  液晶显示技术II
//               Make Time: 2008-4-8
//=======================================================================

#include <reg52.h>
#include  <string.h>
#include  <math.h>

#define uchar unsigned char
#define uint  unsigned int
#define ulong unsigned long

//=======引脚定义==================

sbit lck = P3^5;//锁存信号

//======常用命令及参数定义==========
#define DISPON     0x3f
#define DISPOFF    0x3e
#define DISPFIRST  0xc0
#define SETX       0x40
#define SETY       0xb8
#define LCDBUZY    0x80
#define L          0x00
#define R          0x40
#define LIMIT      0x80
#define LINE       16 // 设置最多一行可以显示多少字符(1~~16)



//========全局变量===============
code uchar pixel[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uchar  cbyte;
uchar  charNum=1; //record the character number in the screen
uchar data statu;
bit xy; // the position variable




//=========函数声明============
void WrL(uchar x);
void WrR(uchar x);
void Lcmcls(void);
void delay1s(void);
void Lcminit (void);
void delay(unsigned int time);
void VtoH8x16change(uchar *hzbuf);
void Puthalf(uchar *strch,uchar row,uchar col);
void Wrdata(uchar x,uchar row,uchar col);
void Locatexy(uchar row,uchar col);
void vWrite8x16Character(uchar *ch,uchar row,uchar col,bit flag);
void vWrite8x16String(uchar  *str,uchar col, uchar row, bit flag);


extern uchar  code picture1[];
extern uchar  code picture2[];
extern uchar  code picture3[];
extern uchar  code picture4[];
extern uchar  code  char_Table[95][16];



struct    //时间结构体
{
  unsigned char hour; //0~23
  unsigned char min;  //0~59
  unsigned char sec;  //0~59
  unsigned int  msec; //0~999
  unsigned int  speeder; // define the speed yourself in interrupt program
  unsigned long allsec; //3600*hour+60*min+sec
   
}time;


//=========数据读取====================
uchar RDdata(uchar  row,uchar  col)
{   
    uchar rdata;
    Locatexy(row,col);//定位显示位置
   
     if(statu==0)
   {  

    P0=0xFF;//P0口送FF,准备读
    lck = 0;
    P1 = 0x2a;//ELCD=1

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?