基于单片机LCD1602的显示程序
时间: 2023-09-03 07:05:54 浏览: 44
好的,以下是基于单片机LCD1602的显示程序,使用C语言编写:
```c
#include<reg52.h>
#include<intrins.h>
#define LCD P0 //定义LCD数据口
sbit RS=P2^0; //RS引脚
sbit RW=P2^1; //RW引脚
sbit EN=P2^2; //EN引脚
void delay(unsigned int i) //延时函数
{
while(i--);
}
void Write_Command(unsigned char com) //写命令函数
{
RS=0; //RS=0,表示写入命令
RW=0; //RW=0,表示写入
LCD=com; //将命令写入LCD
EN=1; //EN=1,允许写入
_nop_(); //空操作
EN=0; //EN=0,禁止写入
}
void Write_Data(unsigned char dat) //写数据函数
{
RS=1; //RS=1,表示写入数据
RW=0; //RW=0,表示写入
LCD=dat; //将数据写入LCD
EN=1; //EN=1,允许写入
_nop_(); //空操作
EN=0; //EN=0,禁止写入
}
void init() //LCD初始化函数
{
Write_Command(0x38); //设置16*2显示,5*7点阵,8位数据接口
Write_Command(0x0c); //开显示,关光标,不闪烁
Write_Command(0x06); //读写一个字符后指针地址加1,不移动屏幕
Write_Command(0x01); //清屏
}
void main()
{
init(); //LCD初始化
Write_Data('H'); //写入字符'H'
Write_Data('e'); //写入字符'e'
Write_Data('l'); //写入字符'l'
Write_Data('l'); //写入字符'l'
Write_Data('o'); //写入字符'o'
while(1);
}
```
该程序首先定义了LCD数据口和控制引脚的宏定义和变量,然后定义了延时函数、写命令函数、写数据函数和LCD初始化函数。其中,写命令函数用于向LCD发送命令,写数据函数用于向LCD发送数据,LCD初始化函数用于初始化LCD。
在main函数中,首先调用LCD初始化函数,然后依次向LCD写入字符'H'、'e'、'l'、'l'、'o'。最后进入死循环,程序不会退出。
该程序可以实现向LCD1602屏幕上显示字符的功能。