




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章人机交互接口技术 3.1键盘接口技术
3.2LED显示接口技术
3.3LCD的显示接口技术第3章人机交互接口技术 所谓人机交互接口,是指人与计算机之间建立联系、交换信息的输入/输出设备的接口。这些输入/输出设备主要有键盘、显示和打印机等。它们是计算机应用系统中必不可少的输入、输出设备,是控制系统与操作人员之间交互的窗口。一个安全可靠的控制系统必须具有方便的交互功能。操作人员可以通过系统显示的内容,及时掌握生产情况。并可通过键盘输入数据,传递命令,对计算机应用系统进行人工干预,以使其随时能按照操作人员的意图工作。微机控制技术3.1键盘接口技术键盘是若干按键的集合,是向系统提供操作人员干预命令的接口设备。键盘分类:★编码键盘,前者能自动识别按下的键并产生相应代码,以并行或串行方式送给CPU。它使用方便,接口简单,响应速度快,但较贵★非编码键盘两种类型,通过软件来确定按键并计算键值。这种方法虽然没有编码键盘速度快,但它价格便宜,因此得到了广泛的应用。3.1.1键盘设计需解决的几个问题微机控制技术3.1.1键盘设计需解决的几个问题1.按键的确认键盘实际上是一组按键开关的集合,其每一个按键就是一个开关量输入装置。键的闭合与否,通过电平状态(高或低)的检测,便可确定相应按键是否已被按下。微机控制技术3.1.1键盘设计需解决的几个问题
2.重键与连击的处理实际按键操作中,若无意中同时或先后按下两个以上的键,系统确认哪个键操作是有效的完全由设计者的意志决定。(1)以按下时间的长短为准(2)以最先按下的键为当前按键,(3)也可以将最后释放的键看成是输入键。(4)通常总是采用单键按下有效,多键同时按下无效的原则。(若系统设有复合键,当然应该另当别论)。微机控制技术3.1.1键盘设计需解决的几个问题
3.按键防抖动技术 多数键盘的按键均采用机械弹性开关。一个电信号通过机械触点的断开、闭合过程,完成高、低电平的切换。由于机械触点的弹性作用,一个按键开关在闭合及断开的瞬间必然伴随有一连串的抖动。其波形如图3—1所示。抖动过程的长短由按键的机械特性决定,一般为10~20ms。微机控制技术3.1.1键盘设计需解决的几个问题图3—1按键抖动信号波形微机控制技术3.1.1键盘设计需解决的几个问题
为了使CPU对一次按键动作只确认一次,必须排除抖动的影响。可以从硬件及软件两方面着手解决。(1)硬件防抖技术通过硬件电路消除按键过程中抖动的影响是一种广为采用的措施。这种作法工作可靠,且节省机时。①滤波防抖电路利用RC积分电路对于干扰脉冲的吸收作用,只要选择好时间常数,就能在按键抖动信号通过此滤波电路时,消除抖动的影响。滤波防抖电路图,如图3—2所示。微机控制技术3.1.1键盘设计需解决的几个问题图3—2滤波防抖电路微机控制技术3.1.1键盘设计需解决的几个问题当键K未按下时,电容C两端电压均为0,非门输出为1。 当K按下时,由于C两端电压不可能产生突变,尽管在触点接触过程中可能出现抖动,只要适当选取R1、R2和C值,即可保证电容C两端的充电电压波动不超过非门的开启电压(TTL为0.8V),非门的输出将维持高电平。同理,当触点K断开时,由于电容C经过电阻R2放电,C两端的放电电压波动不会超过门的关闭电压,因此,门的输出也不会改变。
微机控制技术3.1.1键盘设计需解决的几个问题 总之,只要R1、R2和C的时间常数选取得当,确保电容C由稳态电压充电到开启电压,或放电到关闭电压的延迟时间等于或大于10ms,该电路就能消除抖动的影响。微机控制技术3.1.1键盘设计需解决的几个问题②双稳态防抖电路用两个与非门构成一个RS触发器,即可形成双稳态防抖电路。其原理电路图,如图3—3所示。微机控制技术3.1.1键盘设计需解决的几个问题图3—3双稳态防抖电路图微机控制技术3.1.1键盘设计需解决的几个问题 设未按下时,键K与A端(ON)接通。此时,RS触发器的Q端为高电平1,致使端为低电平0,此信号引至1#与非门的输入端,将其锁住,使其固定输出1。每当开关K被按动时,由于机械开关具有弹性,在A端将形成一连串的抖动波形。而端在K到达B端之前始终为0。这时,无论A处出现怎样的电压(0或1),Q端恒为1。只有当K到达B端,使B端为0,RS触发器产生翻转,变为高电平,导致Q降低为0,并锁住门2,使其输出恒为1。此时,即使B处出现抖动波形,也不会影响端的输出,从而保证Q端恒为0。同理,在释放键的过程中,只要一接通A,Q端就升至为1。只要开关K不再与B端接触,双稳态电路的输出将维持不变。微机控制技术3.1.1键盘设计需解决的几个问题
(2)软件防抖方法
如前所述,若采用硬件防抖电路,则N个键就必须配有N个防抖电路。因此,当键的个数比较多时,硬件防抖将无法胜任。在这种情况下,可以采用软件的方法进行防抖。当第一次检测到有键按下时,先用软件延时(10ms~20ms),而后再确认该键电平是否仍维持闭合状态电平。若保持闭合状态电平;则确认此键确已按下,从而消除了抖动的影响。微机控制技术3.1.2少量功能键接口技术 在单片机控制系统中,由于其控制对象比较专一,往往只需要几个功能键,特别是在智能化仪器仪表中更是如此。
对于具有少量功能键的系统,多采用相互独立的接口方法,即每个按键接一根输入线,各键的工作状态互不影响。采用硬件中断或软件查询方法均可实现其键盘接口。设某系统需要8个功能键,采用中断方式接口的硬件电路图,如图3.4所示。微机控制技术3.1.2少量功能键接口技术图3.4操作功能键硬件接线图微机控制技术3.1.2少量功能键接口技术图3—4中,按键SB7~SB0各具一种功能。当其全部打开时,对应的各条列线全部为高电平,使8输入与非门(74LS30)输出为低电平,反向后为高电平,不产生中断。当其中某个键被按下时,端变作高电平,向CPU申请中断。CPU响应后,用查询的方法找出被按下的功能键,再通过软件查找出功能键服务程序的入口地址。由此,可写出相关的主程序及中断服务程序。
电路中如果不用中断申请线,可直接读入按键状态,然后用查询方式识别出被按下的按键,此时,查询的过程决定了键功能的优先权。微机控制技术3.1.3矩阵键盘接口技术 矩阵式键盘常应用在按键数量比较多的系统之中。这种键盘由行线和列线组成,按键设置在行、列结构的交叉点上,行列线分别连在按键开关的两端。列线通过上拉电阻接至正电源,以使无键按下时列线处于高电平状态。 键盘矩阵与微型机的连接方法是采用I/0接口芯片,如8155、8255等。有时为简单起见,也可采用锁存器,如74LS273、74LS244,74LS373等。
微机控制技术3.1.3矩阵键盘接口技术 键盘处理程序的关键是如何识别键码,微型机对键盘控制的办法是“扫描”。根据微型机进行扫描的方法又可分作程控扫描法和中断扫描法两种。
1.程控扫描法图3—5所示为4×8矩阵组成的32键盘与微型机接口电路。微机控制技术3.1.3矩阵键盘接口技术图3—5用8255A接口的4×8键盘矩阵微机控制技术3.1.3矩阵键盘接口技术(1)电路分析 ★
8255A端口C为行扫描口,工作于输出方式,端口A工作于输入方式,用来读入列值。 ★图中I/O口地址必须满足CS=0,才能选中相应的寄存器。由此可知,8255控制寄存器、端口A、端口B、端口C的地址分别为8300H,8000H,8100H和8200H。 ★在每一个行与列的交叉点均接一个按键,故4×8共32个键。为了说明各键的具体位置,事先按一定顺序给每一个键编一个号,如图中0、1、2、3…1E、1F等,称其为键值。所谓键译码就是找出每个键的键值,然后根据键值确定其是功能键还是数字键,并分别进行处理。微机控制技术3.1.3矩阵键盘接口技术(2)程控扫描步骤①
首先判断是否有键按下。通过PC口,使所有的行输出均为低电平。从端口A读入列值。如果没有键按下,则读人值为FFH。如果有键按下,则不为FFH。②去除键抖动。若有键按下,则延时10~20ms,再一次判断有无键按下。如果此时仍有键按下,则认为键盘上有一个键处于稳定闭合期。微机控制技术3.1.3矩阵键盘接口技术
③若有键闭合,则求出闭合键的键值。
对键盘逐行扫描。先使PC0=0,然后读入列值,若等于FFH,说明该行无键按下。再对下一行进行扫描(即令PC1=0)……直到发现列值不等于FFH,则说明该行有键按下。求出其键值。求键值时,采用行值、列值两个寄存器。键值=8键*行值+列值。例如,X2行Y3列键被按下,求其键值。微机控制技术3.1.3矩阵键盘接口技术3.1.3矩阵键盘接口技术若想得到十进制键值,可在每次相加之后进行DAA修正。★为保证键每闭合一次,CPU只作一次处理,程序中需等闭合键释放后才对其进行处理。完成上述任务的程控扫描程序流程图,如图3—5所示。微机控制技术3.1.3矩阵键盘接口技术
图3—6程控扫描法程序流程图微机控制技术3.1.3矩阵键盘接口技术2.定时扫描法CPU每隔一定的时间(如10ms)对键盘扫描一遍。当发现有键被按下时,便进行读入键盘操作,以求出键值,并分别进行处理。定时时间间隔由单片机内部定时/计数器产生。具体做法是,当定时时间到期时,定时器自动输出一脉冲信号,使CPU转去执行扫描程序。微机控制技术3.1.3矩阵键盘接口技术这种方法扫描和求键值,以及区别功能键与数字键的方法与程序扫描法类似。但有一点需指出,即采用定时扫描法时,必须在其初始化程序中,对定时器写入相应的命令,使之能定时产生中断,从而定时完成扫描任务。为简化设计,在比较大的系统中,也可以每隔一定长度的程序设置一次键盘查询程序。微机控制技术3.1.3矩阵键盘接口技术3.中断扫描法(1)在程控扫描法中,无论有没有键入操作,CPU总要在一定的时间进行扫描,占用CPU的大量时间。(2)为更进一步节省CPU的时间,可采用中断扫描法:①无键按下时,键盘与CPU并行工作,以节省出CPU大量的时间对系统进行监控和数据处理。②一旦键盘按下,则向CPU申请中断。③CPU响应中断后,即转到相应的中断服务程序:对键进行扫描,判别键盘上闭合键的键号。作相应的处理。微机控制技术3.1.3矩阵键盘接口技术图3—7中断扫描方式原理图微机控制技术3.1.3矩阵键盘接口技术分析:①无键按下时,所有列线均为1,经8与非门输出一低电平到中断申请,此时没有中断申请。②一旦某一个键按下以后,则高电平经过按键加到该键所在行的二极管正端,使二极管导通,同时,该列线输出为低电平,使与非门74LS30输出为高电平,从而使发生跳变,向CPU申请中断。③CPU响应后,即转到中断扫描程序,查出键号,且作相应处理。④与程控法相比:扫描方法相同;不同的只是当有键按下时,才进行扫描,提高了计算机的工作效率。微机控制技术3.1.4键盘特殊功能处理
1.键盘锁定技术 在微型机控制系统或智能化仪器中,有时为了防止无意按键给系统带来破坏性的影响,常常在键盘上加锁。 键盘锁定的方法有很多种,最常用的有两种方法。①设置一个标志状态位,②将“锁”加在键值锁存器的控制信号上,通过改变控制信号的状态,来控制键盘的“锁定”及“打开”。微机控制技术3.1.4键盘特殊功能处理(1)状态“锁定”方法在图3—8中,图(a)为状态“锁定”方法。①当“锁”处于水平位置时,8031的P1.0位被置于“0”状态。②而当“锁”为竖直位置时,P1.0位为“1”状态。③需要进行键译码时,首先检查P1.0位的状态,若其为“0”,则不进行译码。因此,这时虽有按键按下,但不起作用。系统调校时,如果需要用键盘,首先将“锁”打开(即放在竖直位置)。用起来非常方便。微机控制技术3.1.4键盘特殊功能处理图3—8键盘锁定技术原理图A微机控制技术3.1.4键盘特殊功能处理(2)控制键值输入法图3—8(b)只是把缓冲/驱动器741S244原来由P2.7和RD控制的使能信号1改由“锁”和P2.7及联合进行控制。图中其它部分与图(a)完全相同。
★当
“锁”处于锁定(垂直)位置时,与非门右输入为l,其输出端为1,故列值不能读出,因此键盘被锁定;
★若将“锁”打开,则与非门输出0,从而打开74LS244的使能控制端1。CPU可以通过74LS244读人键盘列值,进而对键盘的现状进行分析。微机控制技术3.1.4键盘特殊功能处理图3—8键盘锁定技术原理图B微机控制技术3.1.4键盘特殊功能处理2.双功能键和多功能键的设计为了节省功能键的数量,经常采用双功能键或多功能键。(1)双功能键用设置上/下档开关来实现。当开关处于上档位置时,按键为上档功能;当开关为下档位置时,按键具有下档功能。图3—10所示为双功能键设计原理图。图中上/下档判断信号由8255的PA7位采样。微机控制技术3.1.4键盘特殊功能处理图3—9双功能键原理图微机控制技术3.1.4键盘特殊功能处理在双档键程序设计中有两种处理方法。①一种是根据上、下档的位置(PA7的状态),赋予同一个键两个不同的键值,以便根据不同的键值转到相应的功能键入口子程序。②另一种处理方法是每个功能键只赋予一个键值,但在转到功能键处理程序之前,需根据上/下档键标志进行判断,分别转到相当的处理程序。图中的发光二极管作为指示灯,用来区别当前键盘是处于上档键状态还是在下档键状态。微机控制技术3.1.4键盘特殊功能处理(2)多功能键选择一个RAM单元,对某一个键按下的次数进行计数。同时配合一个启动键,当按下启动键后,当前计数值有效。
根据不同的计数值转入相应的功能程序。这样,便使一个键具有了多种功能。微机控制技术3.1.4键盘特殊功能处理(3)复合键①采用复合键,使少量键具有更多控制功能。即将两个或两个以上的键联合,只有当这些键同时按下的时候,才能转去执行相应的功能程序。
②作法:定义一个引导键。只有该键与其它键同时按下时(即按住引导键不放),才形成一个复合键,执行复合键相应的功能。(单纯地按下引导键,只执行空操作。)PC机的很多操作功能就是用这种方法实现的。如:shift-#,Ctrl-y.Ctrl-Alt-Del等等都是复合键。微机控制技术3.2LED显示接口技术常用的显示器件有:
★显示和记录仪表显示记录仪表能连接进行显示和记录,但价钱比较贵,且为模拟显示,读数不方便,有一定的误差。
★CRT显示终端CRT终端是目前微型机控制系统中最常用的显示设备。它直观、灵活,不但可显示数字,而且可以显示画面及报表,如生产流程图、报警画面、动态趋势图、棒状图,以及状态和回路查询画面等。微机控制技术3.2LED显示接口技术
★
LED或LCD显示LED数码管由于结构简单、体积小、功率低、响应速度快
、易于匹配、寿命长、可靠性高等优点,目前已被微机控制系统及智能化仪表广泛采用。
★大屏幕显示;大屏幕显示具有显示清晰、视觉范围宽广等优点,主要用于车站、码头、体育场馆、大型生产装置的现场显示在这一节里,主要介绍LED数码管显示。微机控制技术3.2.1LED数码管的结构及显示原理发光显示器是微型机应用系统中的廉价输出设备,它由若干个发光二极管组成,能显示出各种字符、常用的器件有七段及米字型显示器。
1.LED显示器的结构及原理LED显示器是由发光二极管显示字段组成的,由于制造材料的不同,可相应发出红、黄、兰、紫等各种单色光。微机控制技术3.2.1LED数码管的结构及显示原理(1)结构发光二极管可以有多种组成形式,其中七段显示器应用最多,其次为“米”字形显示器,如图3—10所示。(2)接线方法共阴极共阳极(3)特点体积小,功耗低,可靠,寿命长,使用方便。微机控制技术3.2.1LED数码管的结构及显示原理图3—10LED显示器件的结构及外型图微机控制技术3.2.1LED数码管的结构及显示原理2.LED数码管的显示方法
在微型机控制系统中,常用的显示方法有两种:动态显示静态显示微机控制技术3.2.1LED数码管的结构及显示原理(1)动态显示
①作法:微型机定时地对显示器件扫描,显示器件分时工作,每次只能有一个器件显示。②特点:使用硬件少,因而价格低。占用机时长,只要微型机不执行显示程序,就立刻停止显示。这种显示将使计算机的开销太大。③应用:演示在以工业控制为主的微型机控制系统中应用较少。微机控制技术3.2.1LED数码管的结构及显示原理(2)静态显示①作法:
由微型机一次输出显示后,就能保持该显示结果;直到下次送新的显示模型为止。②特点:占用机时少,显示可靠。缺点是使用元件多,且线路比较复杂,成本比较高。③应用:广泛在工业过程控制中应用随着大规模集成电路的发展,多种功能的显示器件问世(例如,锁存器、译码器、驱动器、显示器四位一体的显示器件)微机控制技术3.2.2LED动态显示接口技术 目前国内生产的许多单片单板机,包括一些开发系统及仿真器,均采用动态显示。这种显示方法的最大优点就是线路简单,价格便宜,适合于大批量生产。图3—11所示为单板机或仿真器中常用的一种并行6位动态显示电路。微机控制技术3.2.2LED动态显示接口技术
图3—116位动态显示电路微机控制技术3.2.2LED动态显示接口技术
(1)电路分析①用8255的PA口输出显示码,PB口用来输出位选码。②74LS07为6位驱动器,它为LED提供一定的驱动电流,由于一片74LS07只有6个驱动器,故七段数码管需要2片进行驱动③8255的PB口经75452缓冲器/驱动器反向后,作为位控信号。④75452内部包括两个缓冲器/驱动器,它们各有两个输入端。微机控制技术3.2.2LED动态显示接口技术(2)显示原理设显示缓冲区为DISBUF,则完成对8255初始化后取出一位要显示的数(十六进制数),利用软件译码的方法求出待显示的数对应的七段显示码,然后由PA口输出,并经过74LS07驱动器放大后送到各显示器的数据总线上。到底哪一位数码管显示,主要取决于位选码。只有位选信号PBi=l(经驱动器变作低电平)时,对应位上的选中段才发光。若将各位从左至右依次进行显示,每个数码管连续显示1ms,显示完最后一位数后,再重复上述过程,这样,人们看到的就好象6位数“同时”显示一样。微机控制技术3.2.2LED动态显示接口技术(3)显示程序完成上述显示任务的显示子程序流程图,如图3—13所示。微机控制技术3.2.2LED动态显示接口技术
图3—13动态显示子程序流程图p69微机控制技术3.2.2LED动态显示接口技术根据图3.13可写出动态显示子程序,如下所示: ORG 3000HDISPLY: MOV R0,#30H ;显示缓冲区首地址送R0 MOV R2,#20H ;位选码指向最左一位DISPY1: MOV A,@R0 ;取出要显示的数 MOV DPTR,#SEGTAB;指向换码表首址
MOVC A,@A+DPTR
;取出显示码 MOV DPTR,#0FD01H
;从8155A口输出显示码 MOV @DPTR,A MOV A,R2 ;从8155B口输出位选码 INC DPTR MOV @DPTR,A ACALL D1MS ;延时1ms MOV A,R2 JNB ACC.0,DISPY2;6位未显示完,继续显示 RET3.2.2LED动态显示接口技术DISPY2: INC R0 ;求下一位待显示的数的存放地址 MOV A,R2 ;求下一个位选码 RR A MOV R2,A AJMP DISPY1D1MS: MOV R3,#7DH ;延时1msDL1: NOP NOP DJNZ R3,DL1 RET3.2.2LED动态显示接口技术SEGTAB: DB 3FH ;对应于字符0 DB 06H ;对应于字符1 DB 5BH ;对应于字符2 DB 4FH ;对应于字符3 DB 66H ;对应于字符4 DB 6DH ;对应于字符5 DB 7DH ;对应于字符6 DB 07H ;对应于字符7 DB 7FH ;对应于字符8 DB 67H ;对应于字符9 DB 77H ;对应于字符A DB 7CH ;对应于字符b DB 39H ;对应于字符c DB 5EH ;对应于字符d DB 79H ;对应于字符E DB71H ;对应于字符F3.2.3LED静态显示接口技术 在智能化仪器及微型机控制系统中,为了使操作者随时都能监视生产过程,而又不占有CPU的很多时间,人们更喜欢采用静态显示电路。它主要是用于BCD码显示。图3—15所示为6位BCD码静态显示电路原理图。微机控制技术3.2.3LED静态显示接口技术
图3—15用锁存器连接的6位静态显示电路P73微机控制技术3.2.3LED静态显示接口技术1.电路分析(1)在图3—15中,74LS244为总线驱动器,6位数字 显示共用同一组总线。(2)每个LED显示器均配有一个锁存器(74LS377),用 来锁存待显示的数据。当被显示的数据从数据总 线经74LS244传送到各锁存器的输入端后,到底 哪一个锁存器选通,取决于地址译码器74LS138 各输出位的状态。(3)总线驱动器74LS244由和A9控制,当和 A9同时为低电平时,74LS244打开,将数据总线 上的数据传送到各个显示器的锁存器74LS377上。
微机控制技术3.2.3LED静态显示接口技术(4)在图3—15所示的显示系统中,地址的确定:
从左到右各显示位的地址依次为:4000H、4100H、4200H、4300H、4400H、4500H。微机控制技术3.2.3LED静态显示接口技术静态显示电路的最大优点是只要不送新的数据,则显示值不变,且微型机不用象动态显示那样不间断地扫描,因而节省了大量机时,适用于工业过程控制及智能化仪器中。微机控制技术3.2.3LED静态显示接口技术2.程序设计根据图3-15可写出6位静态显示程序,由于接口电路中显示模型输出地址和位选信号可一次选中,故只要一次输出即可显示一位。微机控制技术3.2.3LED静态显示接口技术 ORG 8000HSIXDPY: MOV R0,#30H;建立显示缓冲区地址指针 MOV 33H,#03H ;设置循环次数 MOV DPTR,#4000H;指向最左边一位LED,Y0LOOP: MOV A,@R0 ;取BCD码高4位送去显示 ANL A,#0F0H RR A RR A RR A RR A;将高4位移至低4位上 ADD A,#0FH MOVCA,@A+PC ;取字型码
微机控制技术3.2.3LED静态显示接口技术MOVX @DPTR,AMOV A,@R0;取BCD码低4位送去显示
ANL A,#0FH INC DPH ;求下一个显示位地址 ADD A,#08H MOVC A,@A+PC MOVX @DPTR,A ;显示低4位码 INC R0;求下一个要显示的BCD码存放地址 INCDPH ;求下一个显示位地址 DJNZ 33H,LOOP;6位显示模型未送完,继续 RET微机控制技术
3.2.3LED静态显示接口技术SEGTAB DB 3FH,06H,5BH,4FH ;0,1,2,3 DB 66H,6D,7DH,07H ;4,5,6,7 DB 7FH,6FH,77H,7CH ;8,9,A,b DB 39H,5EH,79H,71H ;c,d,E,F DB 80H,40H,00H,73H ;.,-,空,P微机控制技术3.2.4硬件译码显示电路前边介绍的两种显示电路,无论是动态显示电路,还是静态显示电路,其BCD码(十六进制码)一七段显示码的转换方法是一样的,都是利用软件查表法来实现。这种方法的最大优点是电路简单,但显示速度有所下降。所谓硬件译码显示电路,就是用硬件译码器代替软件求得显示代码的方法,这样不仅可以节省微型机的时间,而且程序设计简单,只要把BCD码(或十六进制码)从相应的端口输出即可。
微机控制技术3.2.4硬件译码显示电路 近年来,厂家已生产出许多专用显示芯片,例如MOTOROLA公司生产的BCD-7段译码的芯片MCl4558,同时具有译码及驱动功能的MCl4547和74系列的74LS47,48及49,还有锁存、译码、驱动三位一体的器件MCl4513,MCl4495及MC14499,也有将锁存器、译码器、驱动器和显示器四者合一组成一个只写存储器式显示模块。显示器件不同,其显示电路的组成也不同,下面介绍几种常用的硬件译码显示电路。微机控制技术3.2.4硬件译码显示电路图3.16串行口静态显示电路图P73微机控制技术3.2.4硬件译码显示电路图3.17所示的为动态硬件译码显示电路。分析如下:①用P1口的低4位输出BCD码,经74LS49(共阴极)转换成7段显示码输出。②用74LS138译码器来输出位选信号,改变C,B,A的输入状态,即可输出不同的位选信号,使被选中的位显示。③经过一段延时,再重复上述过程,输出另一位数据,如此不断循环,即可显示8位数据。微机控制技术3.2.4硬件译码显示电路图3—17动态硬件译码显示电路P74微机控制技术3.2.4硬件译码显示电路可以选用静态硬件译码电路,其原理电路如图3.18所示。8255为扩展接口。①利用8255的A口、B口作为输出口和锁存器。由于BCD码为4位二进制数,故每个端口可控制两位LED显示器;②每位显示器与8255口之间接一片74LS47(BCD-7段译码转换电路),用来完成BCD码-7段显示码的转换。此电路称做4位LED静态硬件译码显示电路。微机控制技术3.2.4硬件译码显示电路
如果需要扩大到更多位,可按上述方法再增加8255接口芯片,其译码器、显示器的连接方法完全与本图相同。随着集成电路的发展,现在已经生产出锁存/译码/驱动器合为一体,并能同时供多位LED显示的芯片。微机控制技术3.2.4硬件译码显示电路图3.18静态硬件译码显示电路P74微机控制技术3.3LCD的显示接口技术 液晶显示器LCD(LiquidCrystalDisplay)广泛应用于微型计算机系统中。与LED相比,它具有功耗低,抗干扰能力强,体积小,廉价等特点,目前已广泛应用在各种显示领域。另外,LCD在大小和形状上更加灵活,接口简单,不但可以显示数字、字符,而且可以显示汉字和图形,因此在袖珍仪表、医疗仪器、分析仪器及低功耗便携式仪器中,LCD已成为一种占主导地位的显示器件。微机控制技术3.3LCD的显示接口技术 近年来,随着液晶技术的发展,出现了彩色液晶。彩色液晶显示器作为当代高新技术的结晶产品,它不但有超薄的显示屏,色彩逼真,而且还具有体积小,耗电省,寿命长,无射线,抗震,防爆等CRT所无法比拟的优点。它是工控仪表、机电设备等行业更新换代的理想显示器。以彩色液晶为显示器的笔记本电脑和工业控制机也将越来越受到人们的青睐。微机控制技术3.3.1LCD的基本结构及工作原理
LCD是一种借助外界光线照射液晶材料而实现显示的被动显示器件。图3.19所示体现出LCD器件的原理结构。微机控制技术3.3.1LCD的基本结构及工作原理图3.19液晶显示器基本结构P75微机控制技术3.3.1LCD的基本结构及工作原理 如图3.19所示,液晶材料被封装在上、下两片导电玻璃电极板之间。由于晶体的四壁效应,使其分子彼此正交,并呈水平方向排列于正(上)、背(下)玻璃电极之上,而其内部的液晶分子呈连续扭转过渡,从而使光的偏振方向产生90°旋转。微机控制技术3.3.1LCD的基本结构及工作原理 当线性偏振光透过上偏振片及液晶材料后,便会旋转90°(呈水平方向),正好与下偏振片的方向取得一致。因此,它能全面穿过下偏振片到达反射板,从而按原路返回,使显示器件呈透明状态。若在其上、下电极上加上一定的电压,在电场的作用下,将迫使电极部分的液晶的扭曲结构消失,其旋光作用也随之消失,致使上偏振片接收的偏振光可以直接通过,而被下偏振片吸收(无法到达反射面),呈黑色。当去掉电压后,液晶分子又恢复其扭转结构。据此,可将电极做成各种形状,用以显示各种文字、符号和图形。微机控制技术3.3.2LCD的驱动方式
LCD因其两极间不允许施加恒定直流电压,而使其驱动电路变得比较复杂。为了得到LCD亮、熄所需的两倍幅值及零电压,常给LCD的背极通以固定的交变电压,通过控制前极的电压值的改变实现对LCD显示的控制。 液晶显示器的驱动方式一般有两种,即直接驱动(或称静态驱动)和时分隔(多极)驱动方式。微机控制技术3.3.2LCD的驱动方式1.直接(静态)驱动方式 采用直接驱动的LCD电路中,显示器件只有一个背极,但每个字符段都有独立的引脚,采用异或门进行驱动,通过对异或门输入端电平的控制,使字符段显示或消隐。图3.20所示为一位LCD数码显示电路图。微机控制技术3.3.2LCD的驱动方式图3.20一位LCD数码显示电路及a段驱动波形P76微机控制技术3.3.2LCD的驱动方式 由图3.20(a)可知,当某字段上两个电极(BP与相应的段电极)的电压相位相同时,两极间的相对电压为0,该字段不显示。当字段上两电极的电压相位相反时,两电极的相对电压为两倍幅值电压,字段呈黑色显示。其驱动波形如图3.20(b)所示。微机控制技术3.3.2LCD的驱动方式 可见,液晶显示的驱动与发光二极管的驱动存在着很大的差异。如前所述,只要在LED两端加上恒定的电压,便可控制其亮、暗。但LCD必须采用交流驱动方式,以避免液晶材料在直流电压长时间的作用下产生电解,从而缩短使用寿命。常用的做法是在其公共端(一般为背极)上加上频率固定的方波信号,通过控制前极的电压来获得两极间所需的亮、灭电压差。 静态驱动电路简单,且驱动电压幅值可变动范围较大,允许的工作温度范围较宽,因此,常用于显示字符不太多的场合。微机控制技术3.3.2LCD的驱动方式 从图3.20可以明显地看出,在直接驱动方式下,若LCD有N个字符段,则需N+1条引线,且其驱动电路也要相应地具有N+1条引线。可想而知,在显示字符较多时,过多的引脚将限制直接驱动方式的使用范围。在这种情况下可采用多极驱动的方式。微机控制技术3.3.2LCD的驱动方式2.多极驱动方式
LCD的多极驱动方式是指具有多个背极的驱动方式。LCD的各个字符段按点阵方式排列,一位7段数码管LCD在三极驱动方式下各字符段与背极的排列、等效电路图,如图3.21所示。微机控制技术3.3.2LCD的驱动方式图3.21一位LCD数码管的三极驱动原理电路图p77微机控制技术3.3.2LCD的驱动方式 如图3.21中所示,8根字符段被划分为3组(由于LCD属电容性负载,故在图中以电容表示),每组引出一根电极(BP)以背极为行,段组引极为列,形成矩阵。此时,各段的显示与否只取决于加在相应段组及背极上的电压。与直接驱动方式不同的是,多极驱动方式采用电压平均化法,其占空比有1/2,1/8,1/16,1/32等,偏比为1/2,1/3,1/4,1/5等。微机控制技术3.3.2LCD的驱动方式 驱动电路的设计是实现LCD多极驱动的关键。多极驱动时字符段的消隐并不把该段与对应背极间的电压降为零,只要将电压的有效值降至LCD的门限电压之下就能关断显示。这就是偏压的概念。加大选通电压与非选通电压之间的差距,可提高显示的清晰度。通过恰当的设计各段组与背极间的驱动电压波形,即可控制各段的显示与熄灭,并且保证段与极间以交流电压进行驱动,以确保LCD的正常显示。 此外,交流驱动电压的频率也应考虑。频率太低,会造成显示字符闪烁;如果太高,又引起显示字符反差不匀,且增大LCD的功耗。微机控制技术3.3.2LCD的驱动方式
如图3.22所示为7段LCD在三极驱动方式下的工作电压波形。其中3个背极电压(BPl,BP2,BP3)是具有固定相位关系的周期性信号。以Y列字符段为例,设加在该组段上的电压为VY,其电压峰值为Vp。当驱动电压如VY(1)曲线所示时,将使a,g段显示,d段消隐;若VY为VY(2)波形时,a,g,d段全部显示;而当VY表现为VY(3)形状时,则会使a,g,d段全部消隐。微机控制技术3.3.2LCD的驱动方式 图3.22中只画出了VY(1),VY(2)及VY(3)状况下a段和d段分别与其背极BPl及BP3间的驱动波形。由计算可知,当加在管段引脚与其背极间的有效电压值低于(RMS)时,管段消隐;而当其高于Von=Vp=1.92Voff(RMS)时,管段发光。由图3.22可明显看出,各段与其对应背极间的电压均不含直流部分,从而满足了LCD显示电压的要求。微机控制技术3.3.2LCD的驱动方式图3.22三极式LCD数码管的驱动电路波形p78微机控制技术3.3.2LCD的驱动方式
由上述分析不难推知,通过划分段组,可使具有M个字符段的LCD的引脚数减至(N为背极数)。 事实上,液晶显示器的驱动方式是由电极的引线的选择方式确定的。因此,一旦选定液晶显示器后,用户无法改变驱动方式。微机控制技术3.3.34位LCD静态驱动芯片ICM7211
ICM7211系列是INTERSIL公司出品的一种常用的4位LCD锁存/译码/驱动集成电路。该系列有4个型号的芯片,它们是ICM7211,ICM7211A,ICM7211M及ICM7211AM。其中A表示“BCD码”译码,M则表明芯片内含输入锁存器,可以与CPU直接连接。ICM7211芯片以双列直插结构封装,其引脚图,如图3.23所示。两种译码方式见表3.4。微机控制技术3.3.34位LCD静态驱动芯片ICM7211图3.23ICM7211引脚图P79微机控制技术3.3.34位LCD静态驱动芯片ICM7211B3B2B1B0(十进制)
012…9101112131415全十六进制码
012…9ABCDEFBCD码译码
012…9-
EHLP灭
由于LCD显示器功耗极低,且抗干扰能力强,所以在低功耗的单片机系统中经常采用。 采用两片ICM7211(A)AM组成的8位显示电路如图3.24所示。微机控制技术3.3.34位LCD静态驱动芯片ICM7211图3.24ICM7211(A)M与8031接口线路图P80微机控制技术3.3.34位LCD静态驱动芯片ICM7211如图3.24中所示,ICM7211(A)MU2控制高4位显示,ICAl7211(A)MU2控制低4位显示,同时完成锁存/译码/驱动3种工作,从而实现8位BCD码显示。两片ICAl7211(A)M的背极线BP相连并接至LCD的BP端,以便送出统一波形的背极电压。ICM7211系列芯片BP的最大允许交变频率为125Hz,所以U1芯片的OSC端输入16kHz的晶振信号,U2芯片的OSC端接地。端为片选信号,端为写允许。各片的输入数据都取自数据总线的低4位。单片机输出一位待显示的数时,同时由P2.6(或P2.7)(片选)和P0.5,P0.4(位选)引脚的状态联合确定实现显示的位。微机控制技术3.3.34位LCD静态驱动芯片ICM7211
ICM7211系列芯片使用很方便。其编程也很简单,只要向入口地址写入两位片选和两位位选码及4位BCD码,即可实现相应的显示。例如,在U2的第4位显示出BCD码9,可用下列程序实现:MOVA,#39H ;DS2DSl=11,B3B0=9MOVXDPTR,#4000HOUT@DPTR,A ;待显示数送U2,完成显示微机控制技术3.3.4点阵式LCD的接口技术 字符和数字的简单显示,不能满足图形曲线和汉字显示的要求;而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动,动画功能,分区开窗口,反转,闪烁等功能,用途十分广泛。现在,随着液晶技术的突破,液晶显示器的质量有了很大的提高,品种也在不断推陈出新,不但有各种规格的黑白液晶显示器,而且还有绚丽多彩的彩色液晶显示器。在点阵式液晶显示器中,把控制驱动电路与液晶点阵集成在一起,组成一个显示模块,可与8位微处理器接口直接连接。微机控制技术3.3.4点阵式LCD的接口技术 为方便用户,避免重复性劳动,某些公司参照国际市场同类产品的标准,结合国内的实际情况,成功地开发出彩色液晶智能显示器,如YD系列,MDLS系列,MGLS系列,CCSTN系列以及DMF系列等。其最大点阵可达320×240。采用这种点阵式液晶显示器,不但可以显示数据、汉字,而且还可以显示控制流程图和控制曲线,因而使智能化仪器和控制系统的视窗功能得到了显著的提高。点阵式液晶显示器不但使用方便,而且价格也比较便宜。微机控制技术3.3.4点阵式LCD的接口技术
下面介绍点阵式液晶显示器MGLS12864与单片机的接口及编程的方法,同时介绍了创建8×16字符和16×16点阵汉字的方法,及常用的字符显示和汉字显示程序。 MGLS-12864组成原理框图,如图3.25所示。微机控制技术3.3.4点阵式LCD的接口技术图3.25MGLS-12864组成原理框图P81微机控制技术3.3.4点阵式LCD的接口技术1.MGLS-12864液晶显示器的硬件描述 MGLS-12864使用HD61202作为列驱动器,同时使用HD61203作为行驱动器的液晶显示模块。LCD显示中应尽量避免一个字符一半在左半屏显示,另一半在右半屏显示的情况。 MGLS-12864液晶显示器是一种带有输出驱动的完整的点阵式液晶显示器,它可直接与8位微处理器相联,对液晶屏进行行、列驱动。微机控制技术3.3.4点阵式LCD的接口技术(1)MGLS-12864的特点
★内藏64X64=4096位显示RAM,RAM中每位数 据对应LCD屏上的一个点的亮、暗状态;★HD61202是列驱动器,具有64路列驱动输出;
★HD61202读、写操作时序与68系列微处理器相符, 因此它可直接与68系列微处理器接口相联;
★HD61202的占空比为1/32—1/64。微机控制技术3.3.4点阵式LCD的接口技术(2)MGLS-12864的引脚功能 MGLS-12864液晶显示器有20个管脚。分电源线,数据线和控制线。如图3-25所示.其详细功能如下: ①电源部分
★VDD—电源正极,通常接+5V。
★VSS—电源负极,接-5V。为了简化电路,可直接 接地。
★V0—电源控制端,用来调节显示屏灰度的,调节该端的电压,可改变显示屏字符、图形的颜色深浅微机控制技术3.3.4点阵式LCD的接口技术②控制信号★D/I—数据、指令选择信号。D/I=1为数据操作,D/I=0 为写指令或读状态。
★R/W—读/写选择信号。R/W=1为读选通,R/W=0为写 选通。★CS1,CS2—芯片片选端。低电平选通CS1=0时,选中左片; CS2=0时,,选中右片★E—读/写使能信号。在E下降沿,数据被锁存(写)入 HD61202;在E高电平期间,数据被读出。
★RST—复位信号,低电平有效。当其有效时,关闭液晶显示,使显示起始行为0。RST可与MPU相连,由MPU控制;也可直接接Vcc,使之不起作用。③数据线DB0~DB7—数据总线,双向。
微机控制技术3.3.4点阵式LCD的接口技术
2.HD61202控制驱动器的指令系统 HD61202的指令系统比较简单,总共只有七种。从作用上可分为两类,显示状态设置指令和数据读/写操作指令。(1)显示起始行(ROW)设置指令 显示起始行设置中L5~L0为显示起始行的地址,取值在0-3FH(1-64行)范围内。该指令设置了对应液晶屏最上一行的显示RAM的行号,有规律的改变显示起始行,可以使LCD实现显示滚动屏的效果。微机控制技术3.3.4点阵式LCD的接口技术(2)页(PAGE)设置指令 页面地址设置中P2-P0为选择的页面地址,取值范围为00-07H,代表1-8页,每页8行。(3)列地址(YAddress)设置指令 列地址设置中C5-C0为Y地址计数器的内容,取值在0-3FH(1-64行)范围内。 设置了页地址和列地址,就唯一确定了显示RAM中的一个单元,这样MPU就可以用 读、写指令读出该单元中的内容或该单元写进一个字节数据。(4)显示开关指令 显示开关指令为00111111/0,当DB0=1(3FH)时,LCD显示RAM中内容;DB0=0(3EH)时,关闭显示。微机控制技术3.3.4点阵式LCD的接口技术(5)读状态指令 读状态指令各位的意义如下:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB010BUSY0ON/OFFREST0000微机控制技术3.3.4点阵式LCD的接口技术该指令用来查询HD61202的状态,各参量含义如下:BUSY:1——内部在工作,0——正常状态ON/OFF:1——显示关闭,0——显示打开REST:1——复位状态,0——正常状态
★在BUSY和REST状态时,除读状态指令外,其它指令均不对HD61202产生作用。
★在对HD61202操作之前要查询BUSY状态,以确定是否可以对HD61202进行操作。微机控制技术3.3.4点阵式LCD的接口技术(6)写数据指令 写数据指令就是把要写的数据取出来,写入HD61202的RAM。注意,此时R/W=0,D/I=1。(7)读数据指令 读数据指令就是把HD61202RAM中的数据取出来。注意,此时R/W=1,D/I=1。 读、写数据指令每执行完一次读、写操作,列地址就自动加一。必须注意的是进行读操作之前,必须有一次空读操作,紧接着再读才会读出所要读的单元数据。 HD61202显示RAM的地址结构如图3-26所示。微机控制技术3.3.4点阵式LCD的接口技术图3-26HD61202显示RAM的地址结构图P83微机控制技术3.3.4点阵式LCD的接口技术3.显示驱动子程序的编写及其应用
MGLS-12864使用HD61202作为行、列驱动器,因此,其显示程序的设计与具体电路有关。下面举说明MGLS-12864点阵式LCD显示程序的设计方法。
(1)电路联接 在本设计中的电路联接图如图3-27所示。微机控制技术3.3.4点阵式LCD的接口技术图3-27MGLS-12864显示模块控制图
P84
微机控制技术3.3.4点阵式LCD的接口技术 该图采用直接访问方式,单片机通过高位地址P2.4控制CS1和CS2,以选通液晶显示屏上各区的控制器HD61202;同时MCS-51单片机用P2.3作为R/W信号控制数据总线的数据流向;用P2.2作为D/I信号控制寄存器的选择;E信号由单片机的读信号RD和写信号WR合成产生;另外单片机的复位引脚经反相器后连接到液晶显示器复位引脚,当单片机上电复位或手动复位时,液晶显示器同时也复位;从而实现了单片机对内置HD61202图形液晶显示器模块的电路连接。电路中LCD电源控制端VO是用来调节显示屏灰度的,调节该端的电压,可改变显示屏字符、图形的颜色深浅。微机控制技术3.3.4点阵式LCD的接口技术(2)确定控制字如上图所示,P2口各控制引脚功能如下: P2.7,P2.6,P2.5,P2.1,P2.0——没用 P2.4——0选通左,1选通右 P2.3——0写,1读 P2.2——0指令,1数据 故,确定的控制字如下文程序中所示。
(3)子程序编写及其应用①液晶显示驱动子程序微机控制技术3.3.4点阵式LCD的接口技术;COM EQU 10H;指令寄存器DAT EQU 11H;数据寄存器COLUMNEQU 12H;列地址寄存器,列地址寄存器(0-127)01XXXXXXXPAGEn EQU 13H;页寄存器,10111XXX(D2D1D0)page.5=0左; =1右;显示RAM共64行,分8页,每页8行CODEn EQU14H;字符代码寄存器COUNTEQU15H;计数器微机控制技术3.3.4点阵式LCD的接口技术;p2.4是片选信号,p2.4=0是选通左,p2.4=1是选通右; P2.7P2.0CWADD1EQU0e000H;写指令代码地址(左)11100000CRADD1EQU0E800h;读状态字地址(左)11101000DWADD1EQU0e400H ;写显示数据地址(左)11100100DRADD1EQU0ec00H ;读显示数据地址(左)11101100CWADD2EQU0f000H ;写指令代码地址(右)11110000CRADD2EQU0f800H ;读状态字地址(右)11111000DWADD2EQU0f000H ;写显示数据地址(右)11110100DRADD2EQU0fc00H ;读显示数据地址(右)11111100微机控制技术3.3.4点阵式LCD的接口技术;1.左半屏写指令子程序PRL0:PUSHDPLPUSHDPHMOVDPTR,#CRADD1;状态字口地址PRL01:MOVXA,@DPTR;读状态字 JBACC.7,PRL01;判忙标志BF,如BF=1,忙,等待 MOVDPTR,#CWADD1;写指令字口地址 MOVA,COM;取指令代码 MOVX@DPTR,A;写指令代码 POPDPH POPDPL RET;微机控制技术3.3.4点阵式LCD的接口技术;2.左半屏写显示数据子程序PRL1:PUSHDPL PUSHDPH MOVDPTR, #CRADD1;读状态字口地址PRL11:MOVXA, @DPTR;读状态字 JB ACC.7, PRL11;判忙标志BF,如BF=1, ;忙,等待 MOV DPTR, #DWADD1;写数据口地址 MOV A,DAT ;取数据 MOVX @DPTR,A ;写数据 POPDPH POPDPL RET;微机控制技术3.3.4点阵式LCD的接口技术;3.左半屏读显示数据子程序PRL2:PUSH DPL PUSH DPH MOV DPTR, #CRADD1;读状态字口地址PRL21:MOVX A, @DPTR;读状态字 JB ACC.7, PRL21 ;判忙标志BF,如BF=1, ;忙,等待MOV DPTR, #DRADD1;读显示数据口地址MOVX A, @DPTR;读数据MOV DAT,A ;存数据POP DPHPOP DPLRET
微机控制技术3.3.4点阵式LCD的接口技术 右半屏写指令子程序PRR0、右半屏写数据子程序PRR1和读显示数据子程序PRR2的编制同左半屏子程序相同,只是对应口地址不同。值得说明的是MGLS12864液晶显示屏由二片HD61202控制,LCD显示中应尽量避免一个字符一半在左半屏显示,另一半在右半屏显示的情况。微机控制技术3.3.4点阵式LCD的接口技术下面在介绍几个LCD显示常用的几个程序:;4.1初始化程序INIT:MOV COM, #0c0H;11000000B LCALLPRL0 LCALLPRR0 MOVCOM, #3FH LCALLPRL0 LCALLPRR0 RET;微机控制技术3.3.4点阵式LCD的接口技术;4.2关显示INITN: MOVCOM,#0C0H;11000000B LCALLPRL0 LCALLPRR0 MOVCOM,#3EH LCALLPRL0 LCALLPRR0 RET;微机控制技术3.3.4点阵式LCD的接口技术;5.清显示RAM区(清屏)子程序CLEAR:MOV R4, #00HCLEAR1:MOV A, R4 ORL A, #0B8H; 10111000b MOV COM, A LCALL PRL0 LCALL PRR0 MOV COM, #40h LCALL PRL0 LCALL PRR0 MOV R3, #40HCLEAR2:MOVDAT,#00H LCALL PRL1 LCALL PRR1 DJNZ R3, CLEAR2 INCR4 CJNE R4, #08H,CLEAR1 RET;微机控制技术3.3.4点阵式LCD的接口技术;6.西文显示子程序CW_PR: MOV DPTR, #CTAB; MOV A, CODEn MOV B, #08H MUL AB ADD A, DPL MOV DPL, A MOV A, B ADDC A, DPH MOV DPH, A MOV CODEn,#00H MOV A, PAGEn微机控制技术3.3.4点阵式LCD的接口技术CW_1: MOV count, #08HCW_2: ANL A, #07H;00000111B取页号D2,D1,D0 ORL A, #0B8H;10111000B将页号转为页地址指令 MOV COM, A LCALL PRL0 LCALL PRR0 MOV A, COLUMN CLR C;使用前清标志位 SUBB A, #40H;列地址-64<0左 JC CW_3 MOV COLUMN, A;将右列地址存入 MOV A, PAGEn SETB ACC.5 MOV PAGEn, A微机控制技术3.3.4点阵式LCD的接口技术CW_3: MOV COM,COLUMN ORL COM,#40H;01000000B MOV A,PAGEn ANLA,#30H JBACC.5,CW_31 LCALL PRL0 LJMP CW_4CW_31: LCALL PRR0微机控制技术3.3.4点阵式LCD的接口技术CW_4:MOVA, CODEn MOVCA, @A+DPTR MOV DAT,A MOV A, PAGEn ANL A, #30H JB ACC.5,CW_42CW_41:LCALLPRL1 ;LCALLPRL2 LJMP CW_5CW_42:LCALL PRR1微机控制技术3.3.4点阵式LCD的接口技术CW_5: INCCODEn INCCOLUMN MOVA,COLUMN CJNEA,#40H,CW_6;判超出页面吗?CW_6: JCCW_9 ;不超出 MOVCOLUMN,#00H;超出 MOV A,PAGEn JB ACC.5,CW_9;在右页,退出 SETB ACC.5;在左页-〉右页 CLRACC.4 MOV PAGEn,A MOV COM,#40H;01000000B LCALL PRR0CW_9: DJNZCOUNT,CW_4 RET;微机控制技术3.3.4点阵式LCD的接口技术7.中文显示子程序
8X16字符显示子程序:MGLS12864液晶显示屏由二片HD61202控制,LCD显示中应尽量避免一个字符一半在左半屏显示,另一半在右半屏显示的情况。设列地址寄存器为COLUMN,页地址寄存器为PAGE,要显示的字符代码寄存器为ASCIICODE,W78E58内RAM28H-RAM37H共16个字节存放8×16的点阵数据,生成的8×16点阵库文件存放在单片机W78E58存储器中的首地址定义为ASCII_DOT816。微机控制技术3.3.4点阵式LCD的接口技术DISP_ASCII816:
MOVDPTR,#ASCII_DOT816;8×16点阵库首首地址
MOV A,ASCIICODE;显示字符代码ASCIICODE
MOVB, #16 ;每个字符点阵占16个字节地址
MUL AB;计算显示字符在字库的ADD A, DPL
MOV DPL, A
MOV A, DPH
ADDCA,B
MOV DPH, A;
MOV R0, #28H;将点阵数据放到 ;RAM28H-RAM37H
MOV R2, #00H微机控制技术3.3.4点阵式LCD的接口技术LP_MOVDOT16:
MOV A,R
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论