📄 lcd_driver.c
字号:
#define DISPLAY_ON 0XC
#define RETURN_HOME 0X2
#define FUNCTION_SET 0X38
#define ENTRY_MODE1 0X6
#define ENTRY_MODE2 0X6
#define CLEAR_DISPLAY 0X1
#define DISPLAY_OFF 0X8
#define LINE1 0x80
#define LINE2 0xC0
#define DataPort P2
sbit RS = P0^2;
//sbit RW = P0^1;
sbit E = P0^3;
void msec(int delay)
{
int i,j;
for (j=0;j<delay;j++)
for (i=0;i<500;i++);
}
void lcd_cmdwr(unsigned char Command)
{
RS=0;
msec(1);
E=1;
msec(2);
DataPort=Command;
msec(2);
E=0;
msec(5);
}
void Initialize(void)
{
msec(15);
RS=0;
// RW=0;
msec(1);
DataPort=0;
lcd_cmdwr(FUNCTION_SET);
lcd_cmdwr(FUNCTION_SET);
lcd_cmdwr(FUNCTION_SET);
lcd_cmdwr(CLEAR_DISPLAY);
lcd_cmdwr(DISPLAY_OFF);
lcd_cmdwr(DISPLAY_ON);
lcd_cmdwr(CLEAR_DISPLAY);
lcd_cmdwr(ENTRY_MODE1);
lcd_cmdwr(CLEAR_DISPLAY);
lcd_cmdwr(RETURN_HOME);
}
void lcd_dwr(unsigned char Data)
{
RS=1;
msec(1);
E=1;
msec(2);
DataPort=Data;
E=0;
msec(5);
}
void SendLCDString(char *String )
{
unsigned int i;
for(i=0;i<strlen(String);i++)
{msec(10);lcd_dwr(String[i]);}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -