您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 第九章LCD显示器原理及应用
第九章LCD显示器原理及应用•液晶显示器(LCD)具有体积小、重量轻、功耗低、可以显示图形图像、便于用集成电路直接驱动、易于实现全彩色等特点,因此在仪器仪表、便携工具、监控系统及消费电子等领域有着广泛的应用。•液晶显示器分为段式、字符式、点阵式等。段式只能显示固定的一些符号或字符,价格低廉;字符式可以显示数字和字符,驱动方便,但无法显示汉字。点阵式可以显示汉字,但价格较高。汉字液晶显示器又分为带字库和不带字库的两种。9.1液晶显示模块的原理•图9-1是字符型液晶显示器(不能显示汉字)原理,字框中显示了字码ABC;我们现在看到的图形和实际见到的有些相似,但是有很大的差别,这些字码的显示是通过在方格中依次连接所得,拼凑成一个个字符;液晶显示屏的原理和数码管的相同,即这些方格在这里的作用相当于一个个LED灯相互拥簇在一起;在这里可以称方格为“数码管”;通过控制“数码管”的通断就可以显示出不同的字符或数字。每个字符占据8个方格的宽度,11个方格的高度,即11行8列,但并不是显示一个字符一定要用11行8列,也可以是7行5列等。当然,数字液晶屏不能够显示汉字,因为所占据的位数不同。图9-1字符液晶显示器原理•汉字液晶屏的显示原理也是如此,如图9-2的“大”字所示。大部分汉字液晶屏的驱动芯片是与液晶屏集成在一起的,统称为液晶模块,无须外加驱动,但不同的驱动芯片,其驱动方式和程序也不同,所以在使用液晶模块之前首先要了解其驱动模式。•通常汉字显示屏要比数字显示屏占据的空间大,每个汉字的显示由16行16列组成。以汉字液晶显示器为例,描述一个汉字的点阵数据需要32个字节,因为一个字节占8个位,所以一个位正好描述液晶屏上一个点是否点亮。例如,假设“1”表示某个点是亮的,“0”表示某个点是不亮的,那么下图中“大”字的第一行可以用二进制表示为:0000,0001,0000,0000,即0x01和0x00两个字节。同理,可以推出“大”字其他行的二进制表示。明显,如果显示一个汉字,则需要用32个字节的数据来描述。•汉字液晶又分为点阵型和字库型,点阵型既可以显示汉字、又可以显示图形,而字库型只能显示汉字及字符,无法显示图形,但驱动方便。液晶屏的大小也有很大差异,典型的汉字液晶一般有12232、12864、19264和240128等。在实际应用中,要根据所要显示的内容、成本及信息的多少来选择液晶显示器。图9-2汉字液晶屏显示原理9.2字符型液晶显示器RT1602C•字符型液晶显示器是一种用5×7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等,最常用的为2行16个字,RT1602C液晶模块就属于此类型。9.1液晶显示器模块的原理一.字符型液晶显示模块RT-1602C的外观与引脚显示容量:16×2个字符;工作电流2.0mA(5.0V);字符尺寸:2.95×4.35mm。RT-1602C采用标准的16脚接口,各引脚情况如下:第1脚:VSS为电源地第2脚:VDD为+5V电源第3脚:VL为液晶显示偏压信号第4脚:RS为数据/命令选择端,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:为读/写选择端,高电平时进行读操作,低电平时进行写操作。当RS和共同为低电平时可以写入指令【或者显示地址】,当RS为低电平,为高电平时可以读忙信号,当RS为高电平,为低电平时可以写入数据。/RW/RW/RW/RW•第6脚:E端为使能端,当E端由高电平跳变成低电平时(负跳变),液晶模块执行命令。•第7~14脚:D0~D7,为8位双向数据总线,与单片机的数据总线相连,三态。•第15脚:BLA,背光电源,通常为+5V,并联一个电位器,调节背光亮度。•第16脚:BLK,背光电源地。/RWRS寄存器及操作00指令寄存器写入01忙信号和地址计数器读出10数据寄存器写入11数据寄存器读出二.字符型液晶显示模块RT-1602C的内部结构液晶显示模块RT-C1602C的内部结构可以分成三部分:一为LCD控制器,二为LCD驱动器,三为LCD显示装置,如图所示:控制器采用HD44780,驱动器采用HD44100。HD44780是集控制器,驱动器于一体,专用于字符显示控制驱动集成电路。HD44100是作扩展显示字符位的。HD44780是字符型液晶显示控制器的代表电路。HD44780集成电路的特点:1、可选择5×7或5×10点字符。2、HD44780不仅作为控制器而且还具有驱动40×16点阵液晶像素的能力,并且HD44780的驱动能力可通过外接驱动器扩展360列驱动。HD44780可控制的字符高达每行80个字,也就是5X80=400点,HD44780内藏有16路行驱动器和40路列驱动器,所以HD44780本身就具驱动有16×40点阵LCD的能力(即单行16个字符或两行8个字符)。如果在外部加一HD44100外扩展多40路/列驱动,则可驱动16×2LCD3、HD44780的显示缓冲区DDRAM、字符发生存储器(ROM)及用户自定义的字符发生器CGRAM全部内藏在芯片内。HD44780有80个字节的显示缓冲区,分两行,地址分别为00H~27H,40H~67H,它下实际显示位置的排列顺序跟LCD的型号有关,液晶显示模块RT-1602C的显示地址与实际显示位置的关系如图所示。4、HD44780具有8位数据和4位数据传输两种方式,可与4/8位CPU相连。5、HD44780具有简单而功能较强的指令集,可实现字符移动,闪烁等显示功能。•HD44780内部的字符发生存储器(ROM)已经存储了160个不同的点阵字符图形,如图所示:•这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码。比如数字“1”的代码是00110001B(31H),又如大写的英文字母“A”的代码是01000001B(41H),可以看出英文字母的代码与ASCII编码相同。要显示“1”时,只需将ASCII码31H存入DDRAM指定位置,显示模块将在相应的位置把数字“1”的点阵字符图形显示出来,就可以看到数字“1”。三.指令格式与指令功能LCD控制器HD44780内有多个寄存器,通过RS和R/W引脚共同决定选择哪一个寄存器,选择情况如表:/RWRS寄存器及操作00指令寄存器写入01忙标志和地址计数器读出10数据寄存器写入11数据寄存器读出总共有11条指令,它们的格式和功能如下:RS和引脚上的电平决定对寄存器的选择和读/写,DB7~DB0决定命令功能。/RW1.清屏命令格式RS/RWD7D6D5D4D3D2D1D00000000001功能:清除屏幕,将显示缓冲区DDRAM的内容全部写入空格(ASCII20H)。光标复位,回到显示器的左上角。并给地址计数器AC清零。2.光标复位命令格式RS/RWD7D6D5D4D3D2D1D0000000001×3.输入方式设置命令格式:RS/RWD7D6D5D4D3D2D1D000000001I/DS功能:设定光标的移动方向,并指定整体显示是否移动。其中:I/D=1,为增量方式;I/D=0,为减量方式;S=1,表示移位;S=0,表示不移位。4.显示开关控制命令格式:RS/RWD7D6D5D4D3D2D1D00000001DCB显示控制开关。其中:D位控制整体显示的开与关,D=1,开显示;D=0,关显示。C位控制光标的开与关,C=1,有光标;C=0,无光标。B位控制光标字符闪烁,B=1,字符闪烁;B=0,字符不闪烁。例如:RS=0,RW=0,OCH=00001100表示:D=1开显示,C=0无光标,B=0字符不闪例如:RS=0,RW=0,OEH=00001100表示:D=1开显示,C=1有光标,B=0字符不闪5.光标移位置命令格式:RS/RWD7D6D5D4D3D2D1D0000001S/CR/L××功能:移动光标或整体显示,DDRAM中内容不变。其中:S/C=1时,移位显示的文字;S/C=0时,移动光标。R/L=1时,向右移位,R/L=0时,向左移位。6.功能设置命令格式:RS/RWD7D6D5D4D3D2D1D000001DLNF××DL位设置接口数据位数,DL=1为8位数据接口;DL=0为4位数据接口。【和教材上的不一样】N位设置显示行数,N=0,单行显示;N=1双行显示。F位设置字型大小,F=1为5×10点阵字符,F=0为5×7点阵字符。7.设置字库CGRAM地址命令格式:RS/RWD7D6D5D4D3D2D1D00001AAAAAA功能:设置CGRAM的地址,地址范围0~63。【地址发生器RAM地址设置。】8.显示缓冲区DDRAM地址设置命令格式:RS/RWD7D6D5D4D3D2D1D0001AAAAAAA功能:设置DDRAM的地址,地址范围为0~127。9.读忙标志BF及地址计数器AC命令格式:RS/RWD7D6D5D4D3D2D1D001BFAC功能:BF位为忙标志。BF=1,表示忙,LCM不能接收命令和数据;BF=0,表示LCM不忙,可以接收命令和数据。AC位为地址计数器的值,范围为0~127。【00~7FH】10.写DDRAM或CGRAM命令格式:RS/RWD7D6D5D4D3D2D1D010DATA功能:将数据写入CGRAM或DDRAM中,应与CGRAM或DDRAM地址设置命令结合使用。11.读DDRAM或CGRAM命令格式:RS/RWD7D6D5D4D3D2D1D011DATA功能:从CGRAM或DDRAM中读出数据,应与CGRAM或DDRAM地址设置命令结合使用。液晶显示模块是一个慢显示器件,如果在执行每条指令之前,一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。显示字符时首先要输入显示字符地址,也就是告诉模块在哪里显示字符,表9-2是TC1602EL液晶模块的内部显示位与DDRAM地址的对应关系。表9-X显示位与DDRAM地址的对应关系四.LCD显示器的初始化LCD使用之前须对它进行初始化,初始化可通过复位完成,也可在复位后完成,初始化过程如下:1.清屏;2.功能设置;3.开/关显示设置;4.输入方式设置。9.2.3RT1602C与单片机接口及程序•图9-3是RT1602C与单片机接口的具体连接方式,RT1602C液晶连接插槽位JP4。在使用液晶时,在第三引脚连接了一个10K的电位器用来调整对比度,若程序运行后液晶无显示,则可调整此电位器。图9-31602与单片机接口1602液晶模块的驱动程序编制如下:(功能为:用定时器实现一个时钟,并用1602液晶模块显示时间及提示信息,从中读者可以体会液晶驱动程序的编制方法).•#includereg51.h•#defineucharunsignedchar•#defineuintunsignedint••sbitrs=P3^6;//定义寄存器选择位•sbitrw=P3^7;//定义读写控制线•sbitep=P2^7;//定义使能端•codeucharmayuan[]={'0','1','2','3','4','5','6','7','8','9'};•codeucharaa[]={Thetotaltimesis:};•uchari,hour,minute,second,k=0;•voidputchar(ucharweizhi,ucharda);//显示一个字符的函数•voiddelay(uchar);//延时函数•voidlcd_wcmd(uchar);//写入指令数据到LCD•bitlcd_bz(void);//测试LCD忙碌状态•voidlcd_pos(uchar);//设定显示位置•voidlcd_wdat(uchar);//写入字符显示数据到LCD•voiddisplay(uchar,uchar*);//显示一个字符串的函数•voidlcd_init(void);//液晶初始化函数•voidshowtime(uchar,uchar,uchar);//显示时间函数•voidtime_init(void);//定时时间初始化函数•main(
本文标题:第九章LCD显示器原理及应用
链接地址:https://www.777doc.com/doc-370897 .html