作者:Imzgu_208 | 来源:互联网 | 2023-10-10 12:05
LCD1602显示一个字符,如果这个字符在字库CGROM中,有三种显示方法
#include
#define uint unsigned int
#define uchar unsigned char
sbit rs=P2^6; // 指令/数据选择
sbit rw=P2^5; // 读/写选择
sbit e=P2^7; // e由1到0,执行指令
void delay(uint t);
void write_com(uchar com); //写指令函数
void write_dat(uchar dat); //写数据函数
void init(); // 初始化
void main()
{
init();
write_com(0x80); //设置字符显示位置,就是第一行,第一列
write_dat(‘A‘); //写入字符"A"
//或者写成 write_dat(0x41);
//或者写成 write_dat(65);
while(1); //一直显示下去
}
void write_com(uchar com) ////写指令函数
{
rs=0; //选择指令寄存器
rw=0; //选择写操作
P0=com; //让P0口的8个脚获取指令参数
delay(100);
e=1; //e由1到0,执行指令
delay(100);
e=0;
}
void write_dat(uchar dat)
{
rs=1; //选择数据寄存器
rw=0; //选择写操作
P0=dat; //让P0口的8个脚获取数据参数
delay(100);
e=1;
delay(100);
e=0;
}
void delay(uint t)
{
while(--t);
}
void init()
{
write_com(0x38); //功能设置指令:选择8位总线,两行显示方式,5x8点阵
write_com(0x0c); //打开屏幕显示功能,没有光标,也没有结尾闪烁
write_com(0x06); //写完字符后,光标右移,屏幕移动
write_com(0x01); //清屏
}