- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
LCD与单片机的连接电路图和LCD显示程序/LCD测试程序
3.2.5 LCD显示电路
液晶显示器简称LCD显示器,它是利用液晶经过处理后能改变光线的传输方向的特性来显示信息的。要使用点阵型LCD显示器,必须有相应的LCD控制器、驱动器来对LCD显示器进行扫描、驱动,以及一定空间的ROM和RAM来存储写入的命令和显示字符的点阵。现在往往将LCD控制器、驱动器、RAM、ROM和LCD显示器连接在一起,称为液晶显示模块。
液晶显示模块是一种常见的人机界面,在单片机系统中的应用极其广泛。液晶显示模块既可以显示字符,又可以显示简单的图形。本系统采用的是1602的LCD接口。1602是一种点阵字符型液晶显示模块,可以显示两行共32个字符。根据LCD型号的不同,所需要的背光电阻大小会不同,可自行调节。
本系统采用的LCD为RT-1602C,其主要引脚的功能如下:
RS:数据/命令选择端,高电平时选择数据寄存器,低电平时选择指令寄存器。
RW:读/写选择端,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时,可以写入指令或者显示地址;当RS为低电平、RW为高电平时,可以读忙信号;当RS为高电平、RW为低电平时,可以写入数据。
E:使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
图3-9 LCD显示电路
LCD测试程序
#include reg51.h
/********IO引脚定义***********************************************************/
sbit LCD_RS=P2^7;//定义引脚
sbit LCD_RW=P2^6;
sbit LCD_E=P2^5;
/********宏定义***********************************************************/
#define LCD_Data P0
#define Busy 0x80 //用于检测LCD状态字中的Busy标识
/********数据定义*************************************************************/
unsigned char code uctech[] = {Happy every day};
unsigned char code net[] = {};
/********函数声明*************************************************************/
void WriteDataLCD(unsigned char WDLCD); //写数据
void WriteCommandLCD(unsigned char WCLCD,BuysC); //写命令
unsigned char ReadDataLCD(void); //读数据
unsigned char ReadStatusLCD(void); //读状态
void LCDInit(void); //初始化
void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData); //相应坐标显示字节内容
void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData); //相应坐标开始显示一串内容
void Delay5Ms(void); //延时
void Delay400Ms(void); //延时
/***********主函数开始********************************************************/
void main(void)
{
Delay400Ms(); //启动等待,等LCD讲入工作状态
LCDInit(); //初始化
Delay5Ms(); //延时片刻(可不要)
DisplayListChar(0, 0, uctech);
DisplayListChar(1, 5, net);
ReadDataLCD(); //测试用句无意义
while(1);
}
/***********写数据********************************************************/
void WriteDataLCD(unsigned char WDLCD)
{
ReadStatusLCD(); //检测忙
L
您可能关注的文档
最近下载
- 12J502-2内装修-室内吊顶.pdf VIP
- 全球及中国白蚁防治服务行业市场发展分析及前景趋势与投资发展研究报告2025-2028版.docx
- 2025年党员干部应知应会理论知识题库判断题测试卷附答案.docx VIP
- 医院检验科培训课件:《临床血液与体液检验基本技术标准》的解读(血液部分).pptx
- 2024年山西临汾尧都区社区工作者招聘真题.docx VIP
- 苯酚的理化性质及危险特性表.doc VIP
- 颈椎间盘突出护理.pptx VIP
- 线性代数英文课件:ch5-4(not necessary).ppt VIP
- 《SJT11223-2000-铜包铝线》.pdf VIP
- 民乐介绍课件.pptx VIP
文档评论(0)