STC LCD1206驱动程序,关于Keill c51
时间: 2024-02-10 20:15:39 浏览: 155
keillc51软件驱动
4星 · 用户满意度95%
STC LCD1206是一种常见的LCD模块,使用C51单片机可以很方便地对其进行驱动。以下是一个简单的Keil C51代码示例,可以将其用作参考:
```
#include<reg52.h> //包含头文件
sbit RS=P0^0; //定义RS端口
sbit RW=P0^1; //定义RW端口
sbit E=P0^2; //定义E端口
void delay(unsigned int xms) //延时函数
{
unsigned int i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void Write_lcd_command(unsigned char command) //写命令函数
{
RS=0; //RS=0,选择写入命令
RW=0; //RW=0,设置为写模式
P2=command; //将命令写入P2口
E=1; //E=1,使能
delay(5); //延时5ms
E=0; //E=0,关闭使能
}
void Write_lcd_data(unsigned char dat) //写数据函数
{
RS=1; //RS=1,选择写入数据
RW=0; //RW=0,设置为写模式
P2=dat; //将数据写入P2口
E=1; //E=1,使能
delay(5); //延时5ms
E=0; //E=0,关闭使能
}
void Init_lcd() //初始化函数
{
Write_lcd_command(0x38); //设置16×2显示,5×7点阵,8位数据接口
Write_lcd_command(0x0c); //设置开显示,无光标,不闪烁
Write_lcd_command(0x06); //设定输入方式为移动光标
Write_lcd_command(0x01); //清屏指令
}
void main() //主函数
{
Init_lcd(); //初始化LCD
Write_lcd_data('H'); //写入'H'
Write_lcd_data('e'); //写入'e'
Write_lcd_data('l'); //写入'l'
Write_lcd_data('l'); //写入'l'
Write_lcd_data('o'); //写入'o'
while(1); //循环等待
}
```
以上代码中,需要注意的是:
- P2口连接到LCD的数据总线上,可以根据实际情况进行修改。
- 延时函数delay()的参数需要根据实际情况进行调整,以保证LCD能正常显示。
- 在Write_lcd_command()和Write_lcd_data()函数中,需要先将RS和RW设置为正确的状态,然后再写入数据或命令。
- 在Init_lcd()函数中,需要按照LCD的初始化顺序依次写入命令。
阅读全文