目的:通过protues,1602显示welcome
代码
#include"reg51.h"
typedef unsigned int u16;
typedef unsigned char u8;
sbit lcden=P2^0;
sbit lcdrs=P2^1;
void delay(u16 i)
{
u16 j;
while(i--);
for(j=0;j<110;j--);
}
void lcd_com(u8 com)
{
lcdrs=0;
P1=com;
delay(5);
lcd_en=1;
delay(5);
lcd_en=0;
}
void lcd_write(u8 date)
{
lcdrs=1;
P1=date;
delay(5);
lcd_en=1;
delay(5);
lcd_en=0;
}
void lcd_init()
{
lcden=0;
lcd_com(0x38);
lcd_com(0x0c);
lcd_com(0x06);
lcd_com(0x80);
lcd_write(0x57);
delay(5);
lcd_write(0x45);
delay(5);
lcd_write(0x4c);
delay(5);
lcd_write(0x43);
delay(5);
lcd_write(0x4f);
delay(5);
lcd_write(0x4d);
delay(5);
lcd_write(0x45);
delay(5);
}
void main()
{
lcd_init();
while(1);
}
仿真图
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/979bdfdb20b3f35472a409a0487dba3e.png)
元器件
AT89C51(AT89C52)
RES(电阻,排阻)
LMO16L(1602)
GROUND(接地)
POWER(电源)