📄 test.c
字号:
#include <5408ad.h>
#define DataPort P2
#define Busy 0x80
sbit RSPIN=P3^4;
sbit RWPIN=P3^5;
sbit LCDEN=P3^7;
void DelayMs(unsigned int number);
void WaitForEnable(void);
void Lcdclsp(void);
void WriteCommand(unsigned char c);
void WriteData(unsigned char c);
void ShowChar(unsigned char pos,unsigned char c);
void ShowString(unsigned char line,char *prt);
void InitLcd();
main(void)
{ char code str1[]="U=216.8V T=290K";
char code str2[]="Happy new year!!";
// unsigned char i,j;
// SP=0x50;
DelayMs(2000);
InitLcd();
// DelayMs(2000);
// WriteCommand(0xC0);
// WriteData(0x41);
ShowString(0,str1);
ShowString(1,str2);
//for(i=0;i<17;i++)
// {
// ShowString(0,str1+i);
// ShowString(1,str2+i);
// for(j=0;j<=2000;j++)
// DelayMs(10);
// }
while(1)
{}
}
void DelayMs(unsigned int number)
{
unsigned char temp;
for(;number!=0;number--) {
for(temp=112;temp!=0;temp--) {
}
}
}
void InitLcd()
{ DelayMs(10);
WriteCommand(0x38);
DelayMs(10);
WriteCommand(0x38);
DelayMs(10);
WriteCommand(0x08);
WriteCommand(0x01);
WriteCommand(0x06);
WriteCommand(0x0E);
}
void WriteCommand(unsigned char c)
{
WaitForEnable();
RSPIN=0;
RWPIN=0;
LCDEN=1;
DataPort=c;
LCDEN=0;
}
void WriteData(unsigned char c)
{
WaitForEnable();
RSPIN=1;
RWPIN=0;
LCDEN=1;
DataPort=c;
LCDEN=0;
}
void ShowChar(unsigned char pos,unsigned char c)
{ unsigned char p;
if (pos<0x10)
p=pos+0x80;
else
p=pos+0xB0;
WriteCommand(p);
WriteData(c);
}
void ShowString(unsigned char line,char *prt)
{ unsigned char L,i;
L=line*0x10;
for(i=0;i<16;i++)
ShowChar(L++,*(prt+i));
}
void WaitForEnable(void)
{ DataPort = 0xff;
RWPIN=1;
RSPIN=0;
LCDEN=1;
while(DataPort & Busy );
LCDEN=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -