C8051F020单片机1602液晶显示程序示例

5星 · 超过95%的资源 需积分: 9 5 下载量 119 浏览量 更新于2024-12-01 收藏 2KB TXT 举报
"C0851f020+1602液晶显示程序" 该程序是针对C0851f020微控制器设计的,用于驱动1602液晶显示屏进行文本显示。C0851f020是一款基于8051内核的微控制器,常用于嵌入式系统中。1602液晶显示器是一种常见的字符型液晶屏,可以显示两行、每行16个字符的文本信息。 程序中包含了几个关键的定义和函数,用于初始化、写入命令和数据以及延迟操作。首先,`#include<c8051f020.h>`引入了针对C0851f020微控制器的头文件,包含了相关的特殊功能寄存器(SFR)定义。`SYSCLK22118400`定义了系统的时钟频率为22.1184MHz,这是计算延迟时间的重要参数。 接着,定义了几个类型别名,如`uchar`代表无符号字符,`uint`代表无符号整数。两个字符串`table[]`和`table1[]`分别存储了要显示在液晶屏上的文本。`lcden`和`lcdrs`是连接到液晶屏的数据/命令选择线和使能线,它们被映射到了P3口的相应位。 `delay()`函数用于实现简单的延时,通过两个嵌套的循环来消耗一定的时间。`write_com()`和`write_data()`函数分别用于向液晶屏写入命令和数据。这两个函数首先设置`lcden`和`lcdrs`引脚的电平,然后将数据写入P5口,并在适当的时候使能液晶屏,完成数据传输。 `init()`函数初始化液晶屏,设置其工作模式、显示方式、光标移动方向等。`SYSCLK_Init()`和`PORT_Init()`是未显示的函数,可能分别用于配置系统时钟和端口初始化,以便正确地驱动液晶屏。 `main()`函数是程序的主入口点。它首先关闭看门狗定时器,然后初始化系统时钟和端口,接着调用`init()`初始化液晶屏。之后,程序向液晶屏的第一行写入`table[]`中的字符串,然后跳转到第二行写入`table1[]`中的字符串。程序最后进入一个无限循环,确保文本持续显示。 这个程序展示了如何使用C0851f020微控制器控制1602液晶显示器进行文本显示,涉及了微控制器的I/O操作、时序控制和基本的显示初始化流程。