51单片机用LCD1602显示字符串程序、
时间: 2024-05-16 21:16:51 浏览: 17
以下是51单片机使用LCD1602显示字符串的程序:
```
#include <reg52.h> //头文件
#define LCD1602_DB P0 //定义LCD1602数据口
sbit LCD1602_RS = P2^0; //定义LCD1602命令/数据选择口
sbit LCD1602_RW = P2^1; //定义LCD1602读/写选择口
sbit LCD1602_EN = P2^2; //定义LCD1602使能口
void delay(unsigned int i) //延时函数
{
while(i--);
}
void LCD1602_Write_Com(unsigned char com) //向LCD1602写入命令
{
LCD1602_RS = 0; //选择命令模式
LCD1602_RW = 0; //选择写入模式
LCD1602_EN = 1; //使能
LCD1602_DB = com; //写入命令
delay(100); //延时
LCD1602_EN = 0; //关闭使能
}
void LCD1602_Write_Data(unsigned char dat) //向LCD1602写入数据
{
LCD1602_RS = 1; //选择数据模式
LCD1602_RW = 0; //选择写入模式
LCD1602_EN = 1; //使能
LCD1602_DB = dat; //写入数据
delay(100); //延时
LCD1602_EN = 0; //关闭使能
}
void LCD1602_Init() //初始化LCD1602
{
LCD1602_Write_Com(0x38); //初始化
LCD1602_Write_Com(0x0c); //开启显示
LCD1602_Write_Com(0x06); //设置光标移动方式
LCD1602_Write_Com(0x01); //清屏
}
void LCD1602_Show_String(unsigned char x, unsigned char y, unsigned char *str) //在指定位置显示字符串
{
unsigned char addr;
if(y == 0)
addr = 0x80 + x; //第一行
else
addr = 0xc0 + x; //第二行
LCD1602_Write_Com(addr); //设置显示位置
while(*str != '\0') //循环输出字符串
{
LCD1602_Write_Data(*str);
str++;
}
}
void main()
{
LCD1602_Init(); //初始化LCD1602
LCD1602_Show_String(0, 0, "Hello, World!"); //在第一行显示字符串
LCD1602_Show_String(4, 1, "LCD1602 Demo"); //在第二行显示字符串
while(1);
}
```
其中,`LCD1602_Write_Com()`函数用于向LCD1602写入命令,`LCD1602_Write_Data()`函数用于向LCD1602写入数据,`LCD1602_Show_String()`函数用于在指定位置显示字符串。`LCD1602_Init()`函数用于初始化LCD1602,设置光标移动方式、清屏、开启显示等。`delay()`函数用于延时,避免数据写入时出现错误。在`main()`函数中,先进行LCD1602的初始化,然后在第一行和第二行分别显示字符串。最后进入无限循环。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)