您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 字符型液晶显示模块的应用
――――――――资料整理:李映超2003.11――――――――1字符型液晶显示模块的应用字符型液晶显示模块是一类专用于显示字母、数字、符号等的点阵型液晶显示模块。之所以称字符型液晶显示模块是因为其液晶显示器件的电极图形是由若干个5×8或5×ll点阵块组成的字符块集。每一个字符块是一个字符位,每一位都可以显示一个字符,字符位之间空有一个点距的间隔起着字符间距和行距的作用,这是其一;其二是这类模块使用的是专用于字符显示控制与驱动的IC芯片。这两种因素确定了这类模块的应用范围仅局限于字符而显示不了图形,所以称其为字符型液晶显示模块。字符型液晶显示驱动控制器广泛应用于字符型液晶显示模块上。目前最常用的字符型液晶显示驱动控制器是HD44780U,也出现使用HD667O1或HD66702等字符型液晶显示驱动控制器单片控制的字符型液晶显示模块。液晶显示驱动器为HD44100及其替代品。字符型液晶显示模块在世界上是比较通用的,而且接口格式也是比较统一的,其主要原因可能是各制造商所采用的模块控制器都是HD44780U及其兼容品,不管它的显示屏的尺寸如何,它的操作指令及其形成的模块接口信号定义都是兼容的。所以会使用一种字符型液晶显示模块,就会通晓所有的字符型液晶显示模块。本文将以香港精电公司字符型液晶显示模块为例全面叙述字符型液晶显示模块的应用。HD44780U接口部的总线操作时序图如图下:――――――――资料整理:李映超2003.11――――――――2第一节字符型液晶显示模块的软件特性在上一节已经叙述了字符型液晶显示模块电路特性,由于电路特性决定了字符型液晶员示模块的软件特性实际上就是HD44780U的软件功能。HD44780U有8条指令,指令裕时常简单。指令一览表如下表所示。HD447800指令一格装指令名称控制信号控制代码D/IR/WD7D6D5D4D3D2D1D0清屏0000000001归home位000000001*输入方式设置00000001I/DS显示状态设置0000001DCB光标画面滚动000001S/CR/L**工作方式设置00001DLNF**CGRAM地址设置0001A5A4A3A2A1A0DDRAM地址设置001A6A5A4A3A2A1A0读BF和AC01BFAC6AC5AC4AC3AC2AC1AC0写数据10数据读数据11数据注;“*”表示任意值,在实际应用时一般认为是“0”。指令详细解释如下:●清屏(ClearDisPlay)格式0000000101H该指令完成下列功能:将空码(20H)写入DDRAM的全部80个单元内;将地址指针计数器AC清零,光标或闪烁归home位;设置输入方式参数I/D=1,即地址指针AC为自动加一输入方式。该指令多用于上电时或更新全屏显示内容时。在使用该指令之前要确认DDRAM的当前内容是否有用。●归home位(Returnhome)格式0000001002H该指令将地址指针计数器AC清零。执行该指令的效果有;将光标或闪烁位返回到显示屏的左上第一字符位上,即DDRAM地址00H单元位置;这是因为光标和闪烁位都是以地址指针计数器AC当前值定位的。如果画面已滚动,则撤消滚动效果,将画面拉回到home位。●输入方式设置(EnterModeSet)格式000001I/DS04H-07H该指令的功能在于设置了显示字符的输入方式,即在计算机读/写DDRAM或CGRAM后,地址指针计数器AC的修改方式,反映在显示效果上,当写入一个字符后画面或光标的移动。该指令的两个参数位1/D和S确定了字符的输入方式。I/D表示当计算机读/写DDRAM或CGRAM的数据后,地址指针计数器AC的修改方式,由――――――――资料整理:李映超2003.11――――――――3于光标位置也是由AC值确定,所以也是光标移动的方式。I/D=0AC为减1计数器,光标左移一个字符位。I/D=1AC为加1计数器,光标右移一个字符位。S表示在写入字符时,是否允许显示画面的滚动。S=0禁止滚动。S=1允许滚动。S=1且I/D=O显示画面向右滚动一个字符位。S=1且I/D=1显示画面向左滚动一个字符位。●显示状态设置(Displayon/offControl)格式00001DCB08H-0FH该指令控制着画面,光标及闪烁的开关。该指令有三个状态位D、C、B,这三个状态位分别控着画面,光标和闪烁的显示状态。D画面显示状态位。当D=1时为开显示,D=0时为关显示。注意关显示仅是画面不出现,而DDRAM内容不变。这与清屏指令截然不同。C光标显示状态位。当C=1时为光标显示,C=0时为光标消失。光标为底线形式(5×1点阵),出现在第八行或第十一行上。光标的位置由地址指针计数器AC确定,并随其变动而移动。当AC值超出了画面的显示范围,光标将随之消失。B闪烁显示状态位。当B=l时为闪烁启用,B=0时为闪烁禁止。闪烁是指一个字符位交替进行正常显示态和全亮显示态,闪烁频率在控制器工作频率为250kHz时为2.4Hz。闪烁位置同光标~样受地址指针计数器AC的控制。闪烁出现在有字符或光标显示的字符位时,正常显示态为当前字符或光标的显示;全亮显示态为该字符位所有点全显示。若出现在无字符或光标显示的字符位时,正常显示态为无显示,全亮显示态为该字符位所有点全显示。这种闪烁方式可以设计成块光标,如同计算机CRT上块状光标闪烁提示符的效果。●光标或画面滚动(CursorOrInsplayShift)格式0001S/CR/L00执行该指令将产生画面或光标向左或向右滚动一个字符位。如果定时间隔地执行该指令将产生画面或光标的平滑滚动。画面的滚动是在一行内连续循环进行的,也就是说一行的第一单元与最后一个单元连接起来,形成了闭环式的滚动。当未开光标显示时,执行画面滚动指令时不修改地址指针计数器AC值;有光标显示时,由于执行任意一条滚动指令时都将使光标产生位移,所以地址指针计数器AC都需要被修改。光标的滚动是在DDRAM内全程进行的,它不分是一行显示还是两行显示。如果用光标的指针——地址指针计数器AC加一和减一功能来解释,就能理解光标从第1显示位左移至第80显示位,或从第80显示位右移至第1显示位原理了。光标的滚动功能可以用于搜寻需要修改的显示字符。该指令有两个参数位:S/C滚动对象的选择S/C=l画面滚动S/C=0光标滚动R/L滚动方向的选择――――――――资料整理:李映超2003.11――――――――4R/L=l向右滚动R/L=0向左滚动该指令与输入方式设置指令都可以产生光标或画面的滚动,区别在于该指令专用于滚动功能,执行一次,显示呈现一次滚动效果;而输入方式设置指令仅是完成了一种字符输入方式的设置,仅在计算机对DDRAM等进行操作时才能产生滚动的效果。●工作方式设置(FunctionSet)格式001DLNF00该指令设置了控制器的工作方式,包括有控制器与计算机的接口形式和控制器显示驱动的占空比系数等。该指令有三个参数DL,N和F.它们的作用是:DL设置控制器与计算机的接口形式。接口形式体现在数据总线长度上。DL=1设置数据总线为8位长度,即DB7~DBO有效。DL=0设置数据总线为4位长度,即DB7~DB4有效。在该方式下8位指令代码和数据将按先高4位后低4位的顺序分两次传输。N设置显示的字符行数。N=0为一行字符行。N=1为两行字符行。F设置显示字符的字体。F=0为5×7点阵字符体。F=1为5×10点阵字符体。该指令可以说是字符型液晶显示控制器的初始化设置指令,也是唯一的软件复位指令。HD44780U虽然具有复位电路,但为了可靠的工作,HD44780U要求计算机在征作HD44780U时首先对其进行软件复位。也就是说在控制字符型液晶显示模块工作时首先要进行的软件复位。●CGRAM地址设置(SetCGRAMAddress)格式01A5A4A3A2A1A0该指令将6位的CGRAM地址写入地址指针计数器AC内,随后计算机对数据的操作是对CGRAM的读/写操作。●DDRAM地址设置(SetDDRAMAddress)格式1A6A5A4A3A2A1A0该指令将7位的DDRAM地址写入地址指针计数器AC内,随后计算机对数据的操作是对DDRAM的读/写操作。●读“忙”标志和地址指针值(ReadBusyFlagandAddress)格式BFAC6AC5AC4AC3AC2AC1AC0计算机对指令寄存器通道读操作(RS=0,R/W=l)时,将读出此格式的“忙”标志BF值和7位地址指针计数器AC的当前值。计算机随时都可以对HD44780U读“忙”操作。BP值反映HD4478OU的接口状态。计算机在对HD44780U每次操作时首先都要读BF值判断HD44780U的当前接口状态,仅有在BF=01时计算机才可以向HD44780U写指令代码或显示数据和从HD44780U读出显示数据。计算机读出的地址指针计数器AC当前值可能是DDRAM地址也可能是CGRAM的地址,这取决于最近一次计算机向AC写入的是哪类地址。――――――――资料整理:李映超2003.11――――――――5●写数据(WhteDatatoCGorDDRAM)计算机向数据寄存器通道写入数据,HD44780U根据当前地址指针计数器AC值的属性及数值将该数据送入相应的存储器内的AC所指的单元里。如果AC值为DDRAM地址指针,则认为写人的数据为字符代码并进入DDRAM内AC所指的单元里;如果AC值为CGRAM的地址指针,则认为写入的数据是自定义字符的字模数据并送入CGRAM内AC所指的单元里。所以计算机在写数据操作之前要先设置地址指针或人为的确认地址指针的属性及数值。在写人数据后地址指针计数器AC将根据最近设置的输入方式自动修改。由此可知,计算机在写数据操作之前要作两项工作,其一是设置或确认地址计数器AC值的属性及数值,以保证所写数据能够正确到位;其二是设置或确认输入方式,以保证连续写入数据时AC值的修改方式符合要求。●读数据(ReadDatafromCGorDDRAM)在HD44780U的内部运行时序的操作下,地址指针计数器AC的每一次修改,包括新的AC值的写入,光标滚动位移所引起的AC值的修改或由计算机读写数据操作后所产生的AC值的修改,HD44780U都会把当前AC所指单元的内容送到接口部数据输出寄存器内,供计算机读取。如果AC值为DDRAM地址指针,则认为接口部数据输出寄存器的数据为DDRAM内AC所指单元的字符代码;如果AC值为CGRAM的地址指针,则认为数据输出寄存器的数据是CGRAM内AC所指单元的自定义字符的字模数据。计算机的读数据是从数据寄存器通道中数据输出寄存器读取当前所存放的数据。所以计算机在首次读数据操作之前需要重新设置一次地址指针AC值,或用光标滚动指令将地址指针计数器AC值修改到所需的地址上,然后进行的读数据操作将能获得所需的数据。在读取数据后地址指针计数器AC将根据最近设置的输入方式自动修改。由此可知,计算机在读数据操作之前要作两项工作,其一是设立或确认地址计数器AC值的属性及数值,以保证所读数据的正确性;其二是设置或确认输入方式,以保证连续读取数据时AC值的修改方式符合要求。第二节应用举例初始化程序举例;ORG0000HLJMPKKoOKKOO:LCALLWatBMOVp3,#OFOHMOVRO,#03HKK01;CLRP3.0;RS=OCLRP3.1;R/W=0MOVP1,#30HSETBP3.2;E=1CLRP3.2;E=0――――――――资料整理:李映超2003.11――――――――6LCALLWAITBDJNZRO,KK01LCALLWAITBMOVA,#38HLCALLWRCAMOVA,#08H;OFF-DSWLCALLWRCAMOVA,#01H;DEL-DSIPLCALLWRCAMOVA,#O6HLCALLWRCAMOVA,#10HLCALLWRCAMOVA,#0CH;ON-DISPLCALLWRCALCALLWAITBLCALLWAITBWAITA:PUSH00HMOVRO,#19HWAA00
本文标题:字符型液晶显示模块的应用
链接地址:https://www.777doc.com/doc-2560243 .html