HY-240128M-201液晶显示模块及其应用
控制软件设计
软件采用ICCAVR-C语言开发,它具有很强的软件控制能力,也就是由主控CPU通过接口向液晶模块写入指令来实现模块控制。程序的设计主要包括两个部分,一是设计液晶读写指令或数据、初始化及清屏等通用子程序,其中,初始化设置主要包括以下几方面:设置文本显示缓冲区、图形显示缓冲区和CGRAM区各自的首地址和区域宽度,设置LCM工作模式和显示模式以及选择光标形状等。另一部分是汉字和图形的显示模块程序,显示操作就是将欲显示的字符或图形的点阵信息写入显示缓冲区中的指定位置。要显示的内容由初始化中显示方式设置部分决定,有了通用子程序,就可以构造出各种显示程序。当采用图形显示方式时,与字符、汉字和菜单图形显示的原理类似,关键在字模库的建立,在网上可以下载专门的汉字图形点阵信息提取软件(如zimo21或Image2Lcd等),它们可以提取8×16或16×16等在汇编或C语言状态下的点阵信息,以及各种图片的点阵数据。当采用ATmega8535型单片机控制液晶显示模块时,由于是间接访问方式,所以要对读/写操作时序十分了解。
T6963C控制器时序
当数据指令设置位C/D为高,使能位/CE为低,写状态位/WR为高,读状态位/RD为低时,可以从并行数据口读取内部控制器的状态。
当数据指令设置位C/D为高,使能位/CE为低,写状态位/WR为低,读状态位/RD为高时,可以通过并行数据口向内部控制器写指令。
当数据指令设置位C/D为低,使能位/CE为低,写状态位/WR为低,读状态位/RD为高时,可以通过并行数据口向内部控制器写数据。
设计液晶读写指令或数据通用子程序
LCD状态检测子函数
在写数据或写命令之前,应先检查LCM的状态,即状态寄存器中命令就绪(STA0)和数据就绪(STA1)需要同时检查,只有这两位同时为"1"(LCM空闲状态)时,才可以进行数据和命令的写操作,通常情况下,可以设计一个读状态子函数,用以判断两个标志位的空/忙状态。
显示字符和图形的子函数
液晶显示屏的显示方式包括文本和图形显示。采用图形显示方式时,液晶屏显示信息的管理单位是8×1点阵,称为一个图形显示单位。T6963C按此单位把液晶屏在水平方向上分成20列,垂直方向上分成128行,共20×128个图形显示单位,每个图形显示单位对应图形显示缓冲区中的一个存储单元。将点阵状态信息写入这个存储单元,则在对应的位置显示出图形。采用文本显示方式时,写入文本显示缓冲区的不是点阵状态信息,而是字符代码,其点阵状态信息(8×8) ,即字模存放在CGRAM中。将字符代码写入文本显示缓冲区后,T6963C从CGRAM中取出该字符代码所对应字符的点阵状态信息,通过行列驱动器驱动液晶屏显示该字符。
清屏子函数
在显示数据前,首先要清除屏幕上次显示的内容,为此要用到清屏函数,只需向整个屏幕写入"0"即可实现,具体过程从略。
液晶显示模块的调试注意事项
设计电路时的注意事项
HY-240128M-201的液晶驱动电压高达-19V,一旦错接在其他引脚上,液晶模块内的驱动、控制芯片将在短时间内烧毁,所以,在上电前要反复确认各电源线连接正确,最好将驱动电源与液晶模块通过电位器连接。
要注意复位线电平状态的正确性。当产品使用环境比较好时,可以直接采用在管脚定义里提供的RC复位电路;但当产品用在比较恶劣的环境时,最好将/RST接到MPU的端口上。
调试注意事项
初次上电前,应慢慢调节电位器,使驱动电源端的输出调节在0V左右,观察显示情况,同时监视液晶驱动电压,然后慢慢调整至正常工作点。在调节过程中,不要使液晶模块承受超出最大值的驱动电压,否则会造成液晶模块的损坏。如果在低于或大致等于典型驱动电压时,观察到了显示屏上有色调的变化,即显示域的底色略深于边缘的颜色,表明液晶模块电源连接正确,可以进人下一步工作。如果在室温条件下,调节到超出典型值2-3V时,仍未观察到显示屏上有色调的变化,就不必继续调节了。
HY-240128M-201在虚拟仿真机器人控制系统中的应用
虚拟仿真控制系统用3D-MAX建立排爆机器人和虚拟环境模型,OpenGL绘制仿真环境。通过控制面板上的控件控制仿真环境中的排爆机器人完成各种训练动作。整个系统集成在一个控制箱内,控制箱包括控制面板、显示器和集成PC,系统下位机中的主机首先采集控制面板上的模拟数据和数字数据,以将操作面板按钮的操作转化为控制指令,然后每50ms通过串口向上位机发送一次命令,上位机收到数据后控制虚拟仿真机器人,最后,上位机收集虚拟机器人的姿态参数,再通过串口传送到下位机的主机部分,主机通过SPI把数据传送到从机,从机则用来控制液晶显示模块。通过液晶显示模块,操作者可以观测到虚拟机器人的真实姿态值,以此来准确控制机器人的动作,完成预期的任务。
- PCI9052在多功能CAN适配卡中的应用研究(02-21)
- SEP3203与伪彩LCD驱动SSD1770的接口设计(01-09)
- 如何利用FPGA降低手持设备MPU的功耗(02-26)
- 液晶显示模块(08-20)