📄 新建 文本文档.c
字号:
#define uchar unsigned char //定义一下方便使用
#define uint unsigned int
#define ulong unsigned long
#include<intrins.h>
#include <reg52.h>
#include <absacc.h>
#define CW XBYTE[0xf9fc] //00
#define CR XBYTE[0xf9fe] //10
#define DW XBYTE[0xf9fd] //01
#define DR XBYTE[0xf9ff] //11
#define uchar unsigned char
#define uint unsigned int
uchar key; //按键特征值变量
uchar JianZhi; //液晶显示特征值
uchar INT1flag; //液晶显示标志位
bit flag,f; //读忙标志位
//================================
void delay(unsigned int i) //延时子程序
{
while(--i);
}
//=======================================
unsigned char ReadLcdCode(void)//读液晶命令口子程序
{
unsigned char a;
delay(100);
a=CR;
return (a);
}
//=======================================
void readbf(void) //读液晶忙子程序
{
while(flag)
{
flag=(bit)(ReadLcdCode()&0x80);
}
}
//=======================================
void WriteLcdCode(unsigned char a) //写液晶命令子程序
{
delay(20);
CW=a;
delay(20);
}
//=======================================
void WriteLcdData(unsigned char a) //写液晶数据子程序
{
delay(20);
DW=a;
delay(20);
}
//=======================================
void inttilcs(void) //液晶初始化子程序
{
WriteLcdCode(0x38);
delay(500); //关键500
readbf(); //没有也没关系
WriteLcdCode(0x14);
readbf();
delay(500); //不能少
WriteLcdCode(0x0C);
readbf();
delay(500);
WriteLcdCode(0x06);
}
//=======================================
void displayOneChar(unsigned char X, unsigned char Y, unsigned char DData)
{
Y&=0x1;
X&=0xF;
if(Y) X|=0x40;
X|=0x80;
WriteLcdCode(X);
WriteLcdData(DData);
}
void displayListChar(unsigned char X, bit Y, unsigned char *DData)
{
unsigned char ListLength;
ListLength = 0;
Y&=0x1;
X&=0xF;
while(DData[ListLength]!='\0')
{
displayOneChar(X, Y, DData[ListLength]);
ListLength++;
X++;
if(X==0xf)
{ if(Y==1)
{
WriteLcdCode(0x01);
}
X=0;
Y=~Y;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -