📄 lcd12864_b.c
字号:
//=====================================================================
// 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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -