原创 LCD液晶显示模块C1602A与单片机的接口技术

2010-3-17 09:06 2347 5 5 分类: 电源/新能源

内容摘要:本文介绍的C1602A是一种16字×2行的字符型液晶显示模块,其显示面积为64.5×13.8mm2。
        随着科技的发展,液晶显示模块的应用前景更加广阔,目前已广泛应用于电子表、计算器、液晶电视机、便携式电脑、掌上型电子玩具、复印机、传真机等许多方面。


  液晶显示(LCD)大体分为笔段型、字符型、点阵图形型等几大类,字符型液晶显示模块是一类专门用于显示字母、数字、符号等的点阵型液晶显示模块,它是由若干个5×7或5×11等点阵字符组成。每一个点阵字符位都可以显示一个字符,点阵字符位之间的一个点距的间隔起字符间距和行距的作用。目前市面上常用的有16字×1行、16字×2行、20字×2行和40字×2行等字符模型,这些LCD虽然显示的字数各不相同,但是都具有相同的输入输出界面。本文介绍的C1602A是一种16字×2行的字符型液晶显示模块,其显示面积为64.5×13.8mm2。


1) C1602A的引脚功能和内部结构


1.1) C1602A的引脚功能


  C1602A的引脚排列如图1所示,它有16个引脚可与外界相连,各引脚功能如下:


  1脚VSS:接地;


  2脚Vdd:接+5V电源;


  3脚VO:对比度调整端,LCD驱动电压范围为Vdd~VO。当VO接地时,对比度最强;


  4脚RS:寄存器选择端,RS为0时,选择命令寄存器IR;RS为1时,选择数据寄存器DR;


  5脚:读写控制端,为1时,选择读出;为0时,则选择写入;


  6脚Enable:使能控制端,Enable为1时,使能;Enable为0,禁止;


  7脚~14脚D0~D7:数据总线;


  15脚LED+:背景光源,接+5V;


  16脚LED-:背景光源,接地。





  C1602A的内部结构,它主要由DDRAM、CGROM、CGRAM、IR、DR、BF、AC等大规模集成电路组成。



DRAM为数据显示用的RAM(Data DisplayRAM,简称DDRAM),用以存放要LCD显示的数据,只要将标准的ASCII码放入DDRAM,内部控制线路就会自动将数据传送到显示器上,并显示出该ASCII码对应的字符;


  CGROM为字符产生器ROM(Character GeneratorROM,简称CGORM),它存储了192个5×7的点阵字型,但只能读出不能写入;


  CGRAM为字型、字符产生器的RAM(CharacterGenerator RAM,简称CGRAM),可供使用者存储特殊造型的造型码,CGRAM最多可存8个造型;


  IR为指令寄存器(Instruction Register,简称IR),负责存储MCU要写给LCD的指令码,当RS及R/W引脚信号为0且Enable引脚信号由1变为0时,D0~D7引脚上的数据便会存入到IR寄存器中;


  DR为数据寄存器(Data Register,简称DR),它们负责存储微机要写到CGRAM或DDRAM的数据,或者存储MCU要从CGRAM或DDRAM读出的数据。因此,可将DR视为一个数据缓冲区,当RS及R/W引脚信号为1且Enable引脚信号由1变为0时,读取数据;当RS引脚信号为1,R/W引脚信号为0且Enable引脚信号由1变为0时,存入数据;


  BF为忙碌信号(Busy Flag,简称BF),当BF为1时,不接收微机送来的数据或指令;当BR为0时,接收外部数据或指令,所以,在写数据或指令到LCD之前,必须查看BF是否为0;


  AC为地址计数器(Address Counter,简称AC),负责计数写入/读出CGRAM或DDRAM的数据地址,AC依照MCU对LCD的设置值而自动修改它本身的内容。


C1602A可分2行共显示32个字符,每行显示16个字符。


2) C1602A的控制指令


  C1602A的控制指令共11条,其中9条是针对命令寄存器IR的,另外2条是针对数据寄存器DR的.



3) C1602A相关的子程序


  C1602A与单片机AT89C51的接口电路如图3所示,下面是C1602A相关的子程序:


  (1)查看忙碌信号子程序



4)清C1604A显示器子程序


  LCR:


  MOVA,#00000001B


  CALLWtoiR   


  RET



(5)启动C1602A子程序



         当供电电源符合一定要求时,C1602A通电后能自启动,并进入默认置。C1602A自启动后,单片机(MCU)只要依照系统所需的功能重新对其下达功能设定指令、显示器开/关控制指令及进入模式设定指令即可。通过下面的子程序可以让C1602A5×7的字型显示器显示2行8bit数据,同时显示光标但不闪烁,且可在每一次资料输入DDRAM后光标向右移动一格。


 4实用实例


  下面的应用程序实例可在C1602A的液晶显示屏上显示2行字符,它们分别是“Testing TC1602A.”和“Easy Learning it”。另外,该程序还能使AT89C51的P0口所控制的8个发光二极管每隔1秒钟从左至右点亮一个,在任一时刻只有一个发光二极管是被点亮的。

文章评论0条评论)

登录后参与讨论
我要评论
0
5
关闭 站长推荐上一条 /2 下一条