资源描述
第四章 人机接口第第 四四 章章 人人 机机 接接 口口v1 MCS-51与显示器的接口v2 MCS-51与键盘的接口第四章 人机接口 1 MCS-511 MCS-51与显示器的与显示器的接口接口v为方便人们观察和监视单片机的运行,通常需要用一种为方便人们观察和监视单片机的运行,通常需要用一种显示器作为单片机的输出设备,用来显示单片机的键输显示器作为单片机的输出设备,用来显示单片机的键输入值、中间信息及运算结果。入值、中间信息及运算结果。v单片机系统中常用的显示器主要有单片机系统中常用的显示器主要有LED(LED(发光二极管发光二极管)和和LCD(LCD(液晶显示器液晶显示器)。v两种显示器具有耗电省、配置灵活、线路简单、安装方两种显示器具有耗电省、配置灵活、线路简单、安装方便、耐振动、寿命长等优点。两者相比,便、耐振动、寿命长等优点。两者相比,LEDLED价格更低廉,价格更低廉,结构更简单;结构更简单;LCDLCD功耗更低,显示清晰度更高。功耗更低,显示清晰度更高。第四章 人机接口一一.MCS-51.MCS-51对对LEDLED的接口的接口1.1.LEDLED的种类的种类 LED(Light-Emitting Diode)LED(Light-Emitting Diode)是发光二极管的简称。是发光二极管的简称。LEDLED有七段和八段之分,也有共阴和共阳两种。有七段和八段之分,也有共阴和共阳两种。还有还有“米米”字型字型LEDLED。(a)a)共阴共阴LEDLED结构结构 (b)b)共阴共阴LED (c)LED (c)共阳共阳LEDLEDabcdefgspabcdefgspGGacdefbgabsp第四章 人机接口2.LEDLED数码显示管原理数码显示管原理 数码管发光原理分两种情况:共阳极型数码管发光原理分两种情况:共阳极型a,b,c,d,e,f,ga,b,c,d,e,f,g 各引脚哪个输入低电平,哪个二极管发亮;共阴极型各引脚哪个输入低电平,哪个二极管发亮;共阴极型a-ga-g哪个为高电平,哪个二极管亮。每个二极管为段,哪个为高电平,哪个二极管亮。每个二极管为段,不同的发光段亮,可组成不同字形。不同的发光段亮,可组成不同字形。对于共阴对于共阴LEDLED,显示显示“3 3”,需要在,需要在8 8个管脚上施加控制个管脚上施加控制电平电平0404FH-(FH-(字型码字型码),0404FHFH是按照是按照 h h,g g,f f,e e,d d,c c,b b,a a D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 对于共阳对于共阳LEDLED,显示显示“3 3”字型码字型码是是 h h,g g,f f,e e,d d,c c,b b,a a D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 1 1 0 0 0 01 0 1 1 0 0 0 0 第四章 人机接口3.MCS-513.MCS-51对对LEDLED的显示的显示 MCS-51MCS-51对对LEDLED的显示分为静态和动态两种。的显示分为静态和动态两种。静态显示的特点是:每个数码管能稳定地同时显示各静态显示的特点是:每个数码管能稳定地同时显示各自字形;即工作过程中加在每一个自字形;即工作过程中加在每一个LEDLED上的信号始终同上的信号始终同时存在。各位的显示字符一旦确定,加在每一块显示时存在。各位的显示字符一旦确定,加在每一块显示器上的信号维持不变,直到显示另一个字符为止。器上的信号维持不变,直到显示另一个字符为止。优点:各显示模块相互独立,显示亮度高,编程简单。优点:各显示模块相互独立,显示亮度高,编程简单。缺点:需占用较多的硬件资源。缺点:需占用较多的硬件资源。单片机系统中,常采用单片机系统中,常采用7474LS47LS47、MC14495MC14495等芯片作为等芯片作为LEDLED的的静态显示接口。静态显示接口。第四章 人机接口4 4位位静态静态LEDLED显示器接口显示器接口译码器1#MC14495a b c d e f g G2#MC14495a b c d e f g G3#MC14495a b c d e f g G4#MC14495a b c d e f g GLELELELE8031GABY1Y0Y2Y3P1.7P1.6P1.5P1.4P1.2P1.1P1.0MC14495MC14495芯片的作用是输入被显示字符的二进制码(或芯片的作用是输入被显示字符的二进制码(或BCDBCD码),并把它自动转换成相应字形码,送给码),并把它自动转换成相应字形码,送给LEDLED显示。显示。第四章 人机接口MC14495介绍左图为左图为MC14495内内部结构图:部结构图:4位锁存器位锁存器地址译码和笔段地址译码和笔段ROM阵列阵列带限流电阻的驱带限流电阻的驱动电路动电路(输出电流输出电流为为10mA)第四章 人机接口MC14495介绍左图为左图为MC14495引脚图:引脚图:A、B、C、D为二进制码为二进制码(BCD码码)输入端输入端 :锁存控制端,其为低电平时锁存控制端,其为低电平时可以输入数据,为高电平时锁存可以输入数据,为高电平时锁存输入数据。输入数据。h+i:输入数据大于等于:输入数据大于等于10指示位;指示位;输入大于等于输入大于等于10则其输出高电平,则其输出高电平,否则为低电平。否则为低电平。:为输入等于为输入等于15指示位,若输指示位,若输入数据等于入数据等于15,则其输出高电平,则其输出高电平,否则为高阻状态。否则为高阻状态。VDD、VSS为电源和地。为电源和地。第四章 人机接口译码器1#MC14495a b c d e f g G2#MC14495a b c d e f g G3#MC14495a b c d e f g G4#MC14495a b c d e f g GLELELELE8031GABY1Y0Y2Y3P1.7P1.6P1.5P1.4P1.2P1.1P1.0nP1.7-P1.4P1.7-P1.4用于输出欲显示字符的二进制码用于输出欲显示字符的二进制码(BCD(BCD码码);nP1.2P1.2控制二四译码器工作;控制二四译码器工作;nP1.1P1.1和和P1.0P1.0经译码输出后控制经译码输出后控制MC14495MC14495中哪一个接收欲中哪一个接收欲显示的代码。显示的代码。第四章 人机接口 设设80318031单片机内部单片机内部RAMRAM的的20H20H和和21H21H单元中有四位十六进单元中有四位十六进制数(制数(20H20H中为高两位),请编出能在上图电路中自左中为高两位),请编出能在上图电路中自左到右显示出来的程序。到右显示出来的程序。解:相应程序如下:解:相应程序如下:ORG 1000HORG 1000H SDISPLAY SDISPLAY:MOV AMOV A,20H 20H ;20H20H中数送中数送A A ANL A ANL A,#0F0H#0F0H;截取高截取高4 4位位 MOV PMOV P1 1,A A ;送;送1 1#MC14495MC14495 MOV A MOV A,20H 20H ;20H20H中数送中数送A A SWAP A SWAP A ;低;低4 4位送高位送高4 4位位 ANL AANL A,#0F0H#0F0H;去掉低去掉低4 4位位 INC AINC A ;A A1 1A A0 0指向指向2 2#MC14495MC14495例第四章 人机接口 MOV PMOV P1 1,A A ;送;送2 2#MC14495MC14495 MOV A MOV A,21H 21H ;21H21H中数送中数送A A ANL A ANL A,#0F0H#0F0H;截取高截取高4 4位位 ADD AADD A,#02H#02H ;A A1 1A A0 0指向指向3 3#MC14495MC14495 MOV P MOV P1 1,A A ;送;送3 3#MC14495MC14495 MOV A MOV A,21H 21H ;21H21H中数送中数送A A SWAP A SWAP A ;低;低4 4位送高位送高4 4位位 ANL AANL A,#0F0H#0F0H;去掉低去掉低4 4位位 ADD AADD A,#03H#03H ;A A1 1A A0 0指向指向4 4#MC14495MC14495 MOV P MOV P1 1,A A ;送;送4#MC144954#MC14495 RET RET END END第四章 人机接口 动态显示动态显示 动态显示是指各动态显示是指各LEDLED轮流地一遍一遍显示各自字符;轮流地一遍一遍显示各自字符;人们因为视觉器官惰性而看到的是各人们因为视觉器官惰性而看到的是各LEDLED似乎在同时似乎在同时显示不同字形。显示不同字形。特点特点是所有是所有LEDLED的段选线并联在一起,而每个的段选线并联在一起,而每个LEDLED对对应一根位选线位选线控制哪一位接收字段码。应一根位选线位选线控制哪一位接收字段码。采用动态扫描显示。所谓动态扫描显示:各位共用采用动态扫描显示。所谓动态扫描显示:各位共用一个字形口,利用相应的字位选择轮流向各位送出一个字形口,利用相应的字位选择轮流向各位送出字形码。字形码。优点:优点:硬件开销小。硬件开销小。缺点:缺点:显示的亮度比静态显示差些,位数越多,在显示的亮度比静态显示差些,位数越多,在动态显示时亮度越低,同时需要动态显示时亮度越低,同时需要CPUCPU用于显示刷新的用于显示刷新的频率越高。软件编程较复杂;其实质是:以牺牲频率越高。软件编程较复杂;其实质是:以牺牲CPUCPU的时间换取系统的低功耗,节省了系统资源但使显的时间换取系统的低功耗,节省了系统资源但使显示亮度降低。为了保证显示效果,动态显示位数不示亮度降低。为了保证显示效果,动态显示位数不能太多,一般不超过能太多,一般不超过8 8位。位。第四章 人机接口8031GALEEAP0.0P0.7WRRDP2.7RESETALERDWRRESETAD7AD0CEIO/MPB7PB6PB5PB4PB3PB2PB1PB0PC5PC4PC3PC2PC1PC08155LED5LED4LED3LED2LED1LED08003H8002HGGGGG共阳第四章 人机接口请根据上图编出能在请根据上图编出能在LEDLED5 5LEDLED0 0上上显示显示1995.61995.6的动的动态显示子程序。态显示子程序。例 解:设解:设显示缓冲区显示缓冲区放在放在CPUCPU内部内部RAMRAM中,始址为中,始址为70H70H,显示显示 缓冲区中被显示字符的字形码表的地址偏移量应预先缓冲区中被显示字符的字形码表的地址偏移量应预先 放入。如下图所示:放入。如下图所示:06H13H05H09H09H01HDS0DS0DS1DS1DS2DS2DS3DS3DS4DS4DS5DS570H70H71H71H72H72H73H73H74H74H75H75H76H76H第四章 人机接口 ORG 0600HORG 0600HDISPLYDISPLY:MOV AMOV A,#06H#06H ;方式控制字方式控制字06H06H送送A A MOV DPTR MOV DPTR,#8000H#8000H MOVX DPTR MOVX DPTR,A A ;方式控制字送方式控制字送81558155命令口命令口DISPLY1DISPLY1:MOV RMOV R0 0,#70H#70H ;显示缓冲区始址送显示缓冲区始址送R R0 0 MOV R MOV R3 3,#0FEH#0FEH;字位码始值送字位码始值送R R3 3 MOV A MOV A,R R3 3 LD0 LD0:MOV DPTRMOV DPTR,#8003H#8003H;C C口地址送口地址送DPTRDPTR MOVX DPTR MOVX DPTR,A A ;字位码送字位码送C C口口 MOV DPTRMOV DPTR,#8002H#8002H;B B口地址送口地址送DPTRDPTR第四章 人机接口 MOV AMOV A,RR0 0 ;待显字符地址偏移量送待显字符地址偏移量送A A ADD A ADD A,#13#13 ;对;对A A进行地址修正进行地址修正 MOVC AMOVC A,A+PC A+PC ;查字形码表查字形码表 MOVX DPTRMOVX DPTR,A A ;字形码送字形码送B B口口 ACALL DELAY ACALL DELAY ;延时延时1ms1ms INC R INC R0 0 ;修正显示缓冲区指针修正显示缓冲区指针 MOV AMOV A,R R3 3 ;字位码送字位码送A A JNB ACC.5 JNB ACC.5,LDLD1 1;若显示完一遍,则若显示完一遍,则LEDLED1 1 RL A RL A ;字位码左移一位字位码左移一位 MOV RMOV R3 3,A A ;送回送回R R3 3 AJMP LD AJMP LD0 0 ;显示下一个数码显示下一个数码 LD1LD1:RETRET第四章 人机接口 DTABDTAB:DB 0C0H DB 0C0H,F9HF9H,0A4H0A4H,0B0H0B0H,99H99H DB 92H DB 92H,82H82H,0F8H0F8H,80H80H,90H90H DB 88H DB 88H,83H83H,0C6H0C6H,0A1H0A1H,86H86H DB 8EH DB 8EH,0FFH0FFH,0CH0CH,89H89H,7FH7FH DB 0BFH DB 0BFH DELAY DELAY:MOV RMOV R7 7,#02H#02H ;延时延时1ms1ms程序程序 DELAY1DELAY1:MOV RMOV R6 6,#0FFH#0FFH DELAY2 DELAY2:DJNZ RDJNZ R6 6,DELAY2DELAY2 DJNZ R DJNZ R7 7,DELAY1DELAY1 RET RET END END第四章 人机接口二二MCS-51MCS-51对对LCDLCD的接口的接口1.1.液晶显示模块液晶显示模块 液晶显示模块是一种将液晶显示器件、连接件、液晶显示模块是一种将液晶显示器件、连接件、集成电路、集成电路、PCBPCB线路板、背光源、结构件等装配线路板、背光源、结构件等装配在一起的组件。英文名在一起的组件。英文名“LCD ModuleLCD Module”,简称简称“LCMLCM”,中文简称中文简称“液晶显示模块液晶显示模块”。2.2.液晶显示模块分类液晶显示模块分类n数显液晶模块数显液晶模块 (1 1)计数模块)计数模块 (2 2)计量模块)计量模块 (3 3)计时模块)计时模块n液晶点阵字符模块液晶点阵字符模块n点阵图形液晶模块点阵图形液晶模块第四章 人机接口计数模块v由由不同位数的七段型液晶显示器件与译码驱动不同位数的七段型液晶显示器件与译码驱动器或再加上计数器装配成的计数显示部件;器或再加上计数器装配成的计数显示部件;v具有记录、处理、显示具有记录、处理、显示数字数字的功能;的功能;v我国市场上的主要产品有由我国市场上的主要产品有由CD4055译码驱动译码驱动器驱动的单位液晶显示器件显示模块,以及由器驱动的单位液晶显示器件显示模块,以及由ICM7211,ICM7232,CD14543,UPD145001,HD44100等集成电路与相应配套的液晶显示器件等集成电路与相应配套的液晶显示器件组装成的组装成的4位、位、6位、位、8位、位、10位、位、12位、位、16位位计数模块。计数模块。第四章 人机接口计量模块v有多位段型液晶显示器件和具有译码、驱动、有多位段型液晶显示器件和具有译码、驱动、计数、计数、A/D转换功能的集成电路组装而成的模转换功能的集成电路组装而成的模块;块;v与传感器配合可以实现任何量值的计量和显与传感器配合可以实现任何量值的计量和显示;示;v计量模块所用的集成电路型号主要有计量模块所用的集成电路型号主要有ICL7106,ICL7116,ICL7126,ICL7136,ICL7135,ICL7129等。等。第四章 人机接口计时模块v由由液晶显示器件与一块计时集成电路装液晶显示器件与一块计时集成电路装配成的计时器;配成的计时器;v通用、标准型的计时模块很少;只能到通用、标准型的计时模块很少;只能到电子钟厂家去选购或定制;电子钟厂家去选购或定制;v除了计时功能外,有的模块还具有定时、除了计时功能外,有的模块还具有定时、控制等功能;控制等功能;v多用在家电设备上。多用在家电设备上。第四章 人机接口液晶点阵字符模块v由点阵字符液晶显示模块和专用的行、列驱动器、由点阵字符液晶显示模块和专用的行、列驱动器、控制器及必要的连接件,结构件装配而成;控制器及必要的连接件,结构件装配而成;v可以显示数字和西以上的字符文字符;可以显示数字和西以上的字符文字符;v本身有字符发生器,显示容量大,功能丰富。一般本身有字符发生器,显示容量大,功能丰富。一般这种模块最少也可以显示这种模块最少也可以显示8位位1行或行或16位位1行以上的行以上的字符。字符。v这种模块的点阵排列是这种模块的点阵排列是57、5 8、5 11等的一等的一组组像素点阵排列组成的。每组为组组像素点阵排列组成的。每组为1位,每位间有位,每位间有一点的间隔,每行间也有一行的间隔,所以不能显一点的间隔,每行间也有一行的间隔,所以不能显示图形。示图形。v一般在模块控制、驱动器内具有已经固化好的一般在模块控制、驱动器内具有已经固化好的192个字符字模的字符库个字符字模的字符库CGROM。还有让用户自定义还有让用户自定义建立字符的随机存储器建立字符的随机存储器CGRAM。第四章 人机接口点阵图形液晶模块v是点阵模块的一种,其特点是点阵像素连续排列。是点阵模块的一种,其特点是点阵像素连续排列。行和列在排布中均没有空隔。因此可以连续完整行和列在排布中均没有空隔。因此可以连续完整地显示图形。当然也可以显示字符。地显示图形。当然也可以显示字符。v分为如下三类:分为如下三类:a)行列驱动型:必须外接专用控制器才能与微机接行列驱动型:必须外接专用控制器才能与微机接口;口;b)行列驱动控制型:可直接和微机接口;行列驱动控制型:可直接和微机接口;c)行列控制型:有行列驱动器,也有专用的控制器,行列控制型:有行列驱动器,也有专用的控制器,与微机的接口最简单;控制器有自己一套专用的与微机的接口最简单;控制器有自己一套专用的指令,并有自己的字符发生器。使用较多(例如:指令,并有自己的字符发生器。使用较多(例如:微机保护装置微机保护装置)。)。第四章 人机接口3.液晶显示的采光技术v液晶显示器属于被动型显示器件,它本身不液晶显示器属于被动型显示器件,它本身不会发光,而是靠调制周围的外界光实现显示会发光,而是靠调制周围的外界光实现显示的。的。vLCD的采光主要有利用周围自然光和设置背的采光主要有利用周围自然光和设置背光源两大类。光源两大类。第四章 人机接口自然采光技术v利用周围环境光是最省事、最便宜的方法。利用周围环境光是最省事、最便宜的方法。大部分的计数、计时、计量、仪表、计算器大部分的计数、计时、计量、仪表、计算器等计量显示器件都是用周围自然光为光源。等计量显示器件都是用周围自然光为光源。v靠靠LCD背面的反射膜将射入的自然光从正面背面的反射膜将射入的自然光从正面反射出来完成的。反射出来完成的。v显示清晰度受周围光的影响很大。显示清晰度受周围光的影响很大。第四章 人机接口设置背光源的采光技术v设置背光源可以取得稳定、清晰的显示,设置背光源可以取得稳定、清晰的显示,即使在环境光极差的条件下,也能得到即使在环境光极差的条件下,也能得到清晰的显示。清晰的显示。v用于用于LCD的背光源有:的背光源有:点状:小型白炽灯、卤素灯点状:小型白炽灯、卤素灯、LED 线状:冷阴极荧光灯、热阴极荧光灯线状:冷阴极荧光灯、热阴极荧光灯 面状:扁平荧光灯、面状:扁平荧光灯、EL第四章 人机接口背光源的配置v边光式:在显示器件的侧面,将光源按线型边光式:在显示器件的侧面,将光源按线型配置;其光源器件可以做的很薄,但其光的配置;其光源器件可以做的很薄,但其光的利用率不高,显示器面积不能太大。利用率不高,显示器面积不能太大。v背光式:在显示器整个背面配置一个面光源。背光式:在显示器整个背面配置一个面光源。其光利用率高,面积不受限制。若采用其光利用率高,面积不受限制。若采用LED、灯泡及荧光灯会增加厚度;但若使用电致发灯泡及荧光灯会增加厚度;但若使用电致发光的光的EL膜,也较薄。膜,也较薄。第四章 人机接口4.内置SED1520控制器的液晶模块vSED1520液晶显示驱动器是一种点阵图形液晶显示驱动器是一种点阵图形式液晶显示驱动器,它可直接与式液晶显示驱动器,它可直接与8位微处理位微处理器相连,集行、列驱动器于一体,因此使用器相连,集行、列驱动器于一体,因此使用起来十分方便,作为内藏式控制器被广泛应起来十分方便,作为内藏式控制器被广泛应用于点阵数较少的液晶显示模块。用于点阵数较少的液晶显示模块。第四章 人机接口SED1520的特性 v内置显示内置显示RAMRAM区区RAMRAM容量为容量为25602560位。位。RAMRAM中的中的1 1位数据控制液晶屏上一个点的亮灭状态:位数据控制液晶屏上一个点的亮灭状态:“1”1”表示亮,表示亮,“0”0”表示暗。表示暗。v具有具有1616个行驱动口和个行驱动口和1616个列驱动口。个列驱动口。v可直接与可直接与5151系列微处理器相连,亦可以与系列微处理器相连,亦可以与6868系列单片机相连。系列单片机相连。v可以与可以与SED1520SED1520配合使用,以便扩展配合使用,以便扩展列列驱动口驱动口数目。数目。第四章 人机接口SED1520的管脚第四章 人机接口SED1520管脚功能vDB0DB7:三态数据总线。三态数据总线。vA0:数据指令通道选择:数据指令通道选择:A0=“1”选选择数据通道。择数据通道。A0=“0”选择指令通道。选择指令通道。vRES:这个引脚在这个引脚在上电时上电时为低电平(负为低电平(负脉冲),使芯片复位。脉冲),使芯片复位。正常工作时正常工作时,决,决定了定了SED1520与与MPU的接口类型:的接口类型:(1)RES=“1”表示接口适配表示接口适配68系列时序,系列时序,可直接与可直接与68系列微处理器相连;系列微处理器相连;(2)RES=“0”表示接口适配表示接口适配51系列时序,系列时序,可直接与可直接与51系列微处理器相连;系列微处理器相连;第四章 人机接口SED1520管脚功能vE(RD):):与与68系列系列MPU相连时(相连时(RES=“1”):为):为E读写使能信号;读写使能信号;与与51系列系列MPU相连时(相连时(RES=“0”):为):为RD读操作信号读操作信号。vR/W(WR):与与68系列系列MPU相连时相连时(RES=“1”):为):为RW(读写)选择信号;读写)选择信号;与与51系列系列MPU相连时(相连时(RES=“0”):为):为WR写操作信号写操作信号。第四章 人机接口SED1520管脚功能vFR:LCD帧同步信号输入输出端:当帧同步信号输入输出端:当M/S=1时,该脚为输出端;当时,该脚为输出端;当M/S=0时,该时,该脚为输入端。脚为输入端。vSEG0SEG60:LCD列驱动输出端。列驱动输出端。vCOM0COM15:LCD行驱动输出端。行驱动输出端。vVDD:逻辑电源逻辑电源5V。vVSS:逻辑电源地。逻辑电源地。vV1,V2,V3,V4,V5:LCD驱动电源,驱动电源,要求要求:VDDV1V2V3V4V5。第四章 人机接口SED1520管脚功能vM/S:主从工作方式选择端主从工作方式选择端:(1)当当M/S=1时时,SED1520工作在主方式下,自产工作在主方式下,自产生并向外提供工作时序信号;生并向外提供工作时序信号;(2)当当M/S=0时时,SED1520工作在从方式下,接收工作在从方式下,接收主方式下工作的主方式下工作的SED1520提供的时序信号。提供的时序信号。vCS(OSC1)和和CL(OSC2):SED1520FAA:CS作为片选端作为片选端,CL为外部时钟为外部时钟输入端;输入端;SED1520F0A:OSC1,OSC2为内部振荡器的为内部振荡器的外接端,外接端,OSC1和和OSC2之间接一电阻,即可启之间接一电阻,即可启动内部时钟发生器工作动内部时钟发生器工作。OSC2还用为级联使用还用为级联使用时时序的输入输出端。主方式下,时时序的输入输出端。主方式下,OSC2输出时输出时钟信号;从方式下钟信号;从方式下OSC2输入时钟信号。输入时钟信号。第四章 人机接口SED1520显示RAM的结构vSED1520 中的显示中的显示RAM共共有有32 行行80列;列;第四章 人机接口SED1520的指令系统 共有共有13条指令:条指令:1)1)读状态字读状态字RW A0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 BUSY ADC OFF 1 0 BUSY ADC OFFON RESET 0 0 0 0ON RESET 0 0 0 0 BUSYBUSY:1 1:忙状态;忙状态;0 0:准备好状态:准备好状态 ADCADC:1 1:正常输出(右向)正常输出(右向)0 0:反向输出(左向):反向输出(左向)OFFOFFONON:1 1:显示关闭显示关闭 ;0 0:显示打开:显示打开RESETRESET:1 1:复位状态复位状态 ;0 0:正常状态:正常状态 第四章 人机接口SED1520的指令系统 2)2)复位复位 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 1 1 0 0 0 1 0 0 0 1 1 1 0 0 0 1 0 该该指令为指令为软软件复件复位位指令指令。执执行该行该指令后使显示指令后使显示起起始始行行置为置为第第0 行行列列地地址址置为置为0,页页地地址址置为置为3。n占空比占空比选择 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 0 1 0 1 0 0 0/1 0 0 1 0 1 0 1 0 0 0/1 D00占占空空比比为116,D01为132。驱动32行行液液晶晶显示示时,使,使D0为1;驱动16行行时,使,使D00第四章 人机接口SED1520的指令系统 4)显示起始行设置 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 1 0 显示起始行(0 31)该该指指令令设设置置了了对对应应显显示示屏屏上上首首行行的的显显示示RAMRAM中中的的行行号号。有有规律地修改该行号,可实现滚屏功能。规律地修改该行号,可实现滚屏功能。5)终止驱动选择 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 0 1 0 0 1 0 0/1 该该指指令令用用软软件件终终止止SED1520SED1520的的LCDLCD驱驱动动的的输输出出。使使系系统统在在不不显显示示状状态态下下停停止止对对LCDLCD的的驱驱动动输输出出,从从而而降降低低系系统统的的功功耗耗。终终止止驱驱动动指指令令须须在在关关显显示示状状态态下下输输入入。D0D01 1为为终终止驱动止驱动,D0=0D0=0为正常驱动。为正常驱动。第四章 人机接口SED1520的指令系统 6)6)ADCADC选择指令指令 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 0 1 0 0 0 0 0/1 0 0 1 0 1 0 0 0 0 0/1 该指指令令用用来来设置置列列驱动输出出口口与与液液晶晶屏屏的的列列驱动线的的连接接方方式式。应根根据据厂厂方方提提供供的的模模块实际接接线设置置,一一般般设为0。7)7)显示开关指令示开关指令 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 0 1 0 1 1 1 1/0 0 0 1 0 1 0 1 1 1 1/0 D0D01 1为开开显示示;D0D00 0为关关显示示。该指指令令不不影影响响显示示RAMRAM内容。内容。第四章 人机接口SED1520的指令系统 8)8)设置置页地址地址 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 页地址(地址(0 3)9)9)设置列地址置列地址 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 0 列地址(列地址(0 79)显示显示RAM被分成四页,每页被分成四页,每页80个字节,当设置了页地址个字节,当设置了页地址和列地址后,就确定了显示和列地址后,就确定了显示RAM中的唯一单元,中的唯一单元,该单元元由高到低的各个数据位,由高到低的各个数据位,对应于于显示屏上某一列的示屏上某一列的8行数行数据位。据位。第四章 人机接口SED1520的指令系统 10)10)改写方式改写方式设置指令置指令 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0该指令发出后,使得每次写数据后列地址自动增该指令发出后,使得每次写数据后列地址自动增1,而读数据后列,而读数据后列地址仍保持原值不变。这种称为地址仍保持原值不变。这种称为 “改写模式改写模式”(Read Modify Write)的方式的方式,为逐个读取像点修改的工作提供了方便。为逐个读取像点修改的工作提供了方便。n改写方式结束指令改写方式结束指令 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 1 1 1 0该指令执行后,将结束改写方式,以后无论读或写数据该指令执行后,将结束改写方式,以后无论读或写数据后,列地址都增后,列地址都增1 1。第四章 人机接口SED1520的指令系统 12)12)写数据写数据 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 1 显示数据显示数据 13)13)读数据读数据 RW A0 D7 D6 D5 D4 D3 D2 D1 D0 1 1 1 1 显示数据显示数据第四章 人机接口内藏SED1520控制器图形液晶显示模块与单片机的接口(ZCM12232C)vZCM12232C有有两两个个SED1520(SED1520 中的中的显示显示RAM共共有有32 行行80列列),每每个个SED1520都都只只用用了了61 个个列列驱动驱动口口(SEG0-SEG60)。所以其所以其点阵数为点阵数为12232。vZCM12232C属于常温属于常温(00C-500C)型、无背光型、无背光的的LCM。第四章 人机接口ZCM12232C模块引脚vVcc、GND:+5V电源和地。电源和地。vVo:液晶驱动电源。液晶驱动电源。vE1、E2:左右屏左右屏(两片两片SED1520选通选通)使能信号。使能信号。vR/W:读读/写选通。写选通。vA0:数据数据/命令寄存器选择信号。命令寄存器选择信号。vRESET:这个引脚在上电时为低电平(负脉冲),这个引脚在上电时为低电平(负脉冲),使芯片复位。正常工作时,决定使芯片复位。正常工作时,决定了了SED1520与与MPU的接口类型:的接口类型:(1)RES=“1”表示接口适配表示接口适配68系列时序,可直接与系列时序,可直接与68系列微处理器相连;系列微处理器相连;(2)RES=“0”表示接口适配表示接口适配51系列时序,可直系列时序,可直接与接与51系列微处理器相连;系列微处理器相连;v DB0-DB7:数据总线。数据总线。第四章 人机接口ZCM12232C模块与单片机的接口模块与单片机的接口v直接控制方式:将液晶显示模块的接口作为存贮器直接控制方式:将液晶显示模块的接口作为存贮器或或I/O设备直接设备直接挂在挂在CPU的总线上。操作时序由地址的总线上。操作时序由地址线及读写信号线等联合产生。这种方式的特点是软线及读写信号线等联合产生。这种方式的特点是软件编程简单。件编程简单。v间接控制方式间接控制方式:CPU通过自身的或系统的并行接口通过自身的或系统的并行接口与液晶显示模块接口与液晶显示模块接口。CPU通过对该并行接口输出通过对该并行接口输出状态的编程操作,产生液晶显示模块工作所需的时状态的编程操作,产生液晶显示模块工作所需的时序。这种方式硬件电路相当简单,液晶接口的全部序。这种方式硬件电路相当简单,液晶接口的全部控制信号线和数据总线都直接与并行接口连接。但控制信号线和数据总线都直接与并行接口连接。但软件编程复杂。软件编程复杂。第四章 人机接口间接访问方式接口vE1:P3.0vE2:P3.1vR/W:P3.2vA0:P3.3vDB0-DB7:P1.0-P1.7第四章 人机接口直接访问方式接口vCPU通过地址译码控制通过地址译码控制E1、E2的选通的选通(左右两个左右两个SED1520),读写操作信号读写操作信号R/W由地址线由地址线A1控制;数控制;数据据/命令寄存器选择信号由地址线命令寄存器选择信号由地址线A0控制。控制。A AE EC CB BF FD D第四章 人机接口液晶显示器件的操作vCPU对液晶控制器的读、写子程序:对液晶控制器的读、写子程序:CPU与与液晶控制器的信息交换是通过液晶控制器的信息交换是通过CPU对液晶控对液晶控制器的读、写操作来完成的,这些操作包括制器的读、写操作来完成的,这些操作包括指令的写入、状态字的读出、数据的读写等。指令的写入、状态字的读出、数据的读写等。这些基本的程序是液晶显示器件应用的最基这些基本的程序是液晶显示器件应用的最基本的子程序。本的子程序。第四章 人机接口基本子程序流程写指令子程序流程图读/写数据子程序流程图第四章 人机接口液晶初始化v液晶控制器在使用时首要的就是初始化,液晶控制器在使用时首要的就是初始化,其内容包括:控制器工作参数及显示所其内容包括:控制器工作参数及显示所需的基础参数设置、显示缓冲区的初始需的基础参数设置、显示缓冲区的初始化等。工作参数的设置与液晶显示器件化等。工作参数的设置与液晶显示器件及其驱动器有关,用户将根据有关的指及其驱动器有关,用户将根据有关的指令规定及硬件跳线来设置,别无选择;令规定及硬件跳线来设置,别无选择;显示所需的基础参数设置,根据用户使显示所需的基础参数设置,根据用户使用液晶的目的及需要进行;显示缓冲区用液晶的目的及需要进行;显示缓冲区的初始化主要是指显示缓冲区的清的初始化主要是指显示缓冲区的清0;第四章 人机接口SED1520中字符字模的排列规律第四章 人机接口8*16点阵的数字字模v8*16点阵:一个字符字模点阵:一个字符字模由由16个字节组成。个字节组成。v字模排列顺序:每个字节字模排列顺序:每个字节高位在下高位在下,低位在上低位在上;各;各个字节按照个字节按照从左到右、从从左到右、从上到下上到下的原则排列。的原则排列。v“8”的字模:的字模:0B8H,0FCH,044H,044H044H,0FCH,0B8H,000H007H,00FH,008H,008H008H,00FH,007H,000H第四章 人机接口字模的获得v可以手工绘制点阵图得到。可以手工绘制点阵图得到。v运用专门的字模提取软件获得。运用专门的字模提取软件获得。英文字符和阿拉伯数字通常的点阵数:英文字符和阿拉伯数字通常的点阵数:5*7、8*8、8*16等。等。汉字通常的点阵数:汉字通常的点阵数:16*16、24*24第四章 人机接口显示8*16点阵字符的流程图第四章 人机接口直接访问方式接口vCPU通过地址译码控制通过地址译码控制E1、E2的选通的选通(左右两个左右两个SED1520),读写操作信号读写操作信号R/W由地址线由地址线A1控制;数控制;数据据/命令寄存器选择信号由地址线命令寄存器选择信号由地址线A0控制。控制。A AE EC CB BF FD D第四章 人机接口SED1520的控制程序(实验)CWADD1 EQU 8000H;CWADD1 EQU 8000H;写指令代码地址(写指令代码地址(E1E1)DWADD1 EQU 8001H;DWADD1 EQU 8001H;写显示数据地址(写显示数据地址(E1E1)CRADD1 EQU 8002H;CRADD1 EQU 8002H;读状态字地址(读状态字地址(E1E1)DRADD1 EQU 8003H;DRADD1 EQU 8003H;读显示数据地址(读显示数据地址(E1E1)CWADD2 EQU 8004H;CWADD2 EQU 8004H;写指令代码地址写指令代码地址(E2E2)DWADD2 EQU 8005H;DWADD2 EQU 8005H;写显示数进地址(写显示数进地址(E2E2)CRADD2 EQU 8006H;CRADD2 EQU 8006H;读状态字地址(读状态字地址(E2E2)DRADD2 EQU 8007H;DRADD2 EQU 8007H;读显示数据地址读显示数据地址(E2E2)KEY_VALUE EQU 29H;KEY_VALUE EQU 29H;键值键值第四章 人机接口PD1 EQU 3DH;122/2 PD1 EQU 3DH;122/2 分成左右两半屏分成左右两半屏 122122x32x32COLUMN EQU 27HCOLUMN EQU 27HPAGE_SED EQU 26H;PAGE_SED EQU 26H;页地址寄存器页地址寄存器 D1,DO:D1,DO:页地址页地址CODE_SED EQU 25H;CODE_SED EQU 25H;字符代码寄存器字符代码寄存器 COUNT EQU 24H;COUNT EQU 24H;计数器计数器DIRDIR EQU 23hEQU 23hCTEMP EQU 22HCTEMP EQU 22HCOM EQU 21H;COM EQU 21H;指令寄存器指令寄存器DAT EQU 20H;DAT EQU 20H;数据寄存器数据寄存器第四章 人机接口写指令代码子程序(E1)PR0:PUSH DPL PUSH DPH MOV DPTR,#CRADD1;设置读状态字地址设置读状态字地址PR01:MOVX A,DPTR;读状态字读状态字 JB ACC.7,PR01;判判忙忙标志为句标志为句0,否再读否再读 MOV DPTR,#CWADD1;设置写指令代码地址设置写指令代码地址 MOV A,COM;取指令代码取指令代码 MOVX DPTR,A;写指令代码写指令代码 POP DPH POP DPL RET第四章 人机接口写显示数据子程序(E1)PR1:PUSH DPL PUSH DPH MOV DPTR,#CRADD1;设置读状态字地址设置读状态字地址 PR11:MOVX A,DPTR;读状态宇读状态宇 JB ACC.7,PR11;判判忙忙标志为标志为0,否再读否再读 MOV DPTR,#DWADD1;设置写显示数据地址设置写显示数据地址 MOV A,DAT;取数据取数据 MOVX DPTR,A;写数据写数据 POP DPH POP DPL RET 第四章 人机接口读显示数据子程序(E1)PR2:PUSH DPL PUSH DPH MOV DPTR,#CRADD1;设置读状态字地址设置读状态字地址 PR21:MOVX A,DPTR;读状态字读状态字 JB ACC.7,PR21;判判忙忙标志为标志为0否否,否再读否再读 MOV DPTR,#DRADD1;设置读显示数据地址设置读显示数据地址 MOVX A,DPTR;读数据读数据 MOV DAT,A;存数据存数据 POP DPH POP DPL RET 第四章 人机接口8*16点阵字符显示程序段;8*16点阵字符显示程序段点阵字符显示程序段WRI_EN816:MOV DPTR,#CCTAB;确定字符字模表首地址确定字符字模表首地址 MOV A,CODE_SED;取代码取代码 MOV B,#10H;字模块宽度为字模块宽度为16个字节个字节 MUL AB;代码代码16 ADD A,DPL;字符字模块首地址字符字模块首地址 MOV DPL,A;字模库首地址代码字模库首地址代码16 MOV A,B ADDC A,DPH MOV DPH,A CLR 50H PUSH COLUMN PUSH COLUMN MOV CODE_SED,#00H;代码寄存器代码寄存器借用借用为间址寄存器为间址寄存器WRI_1:MOV COUNT,#8H;计数器设置计数器设置为为8第四章 人机接口 MOV A,PAGE_SED ;读页地址寄存器读页地址寄存器 ANL A,#03H;取页地址有效值取页地址有效值 ORL A,#0B8H;或或页地址设置代码页地址设置代码 MOV COM,A;设置页地址设置页地址 LCALL PR0 LCALL PR3 POP COLUMN MOV A,COLUMN;读列地址寄存器读列地址寄存器 CLR C SUBB A,#PD1;列地址列地址-模块参数模块参数 JC WRI_2;0为左半屏显示区域为左半屏显示区域(E1)MOV COLUMN,A;0为右半屏显示区域为右半屏显示区域(E2)SETB 50H;设置区域标志位。设置区域标志位。WRI_2:MOV COM,COLUMN;设置列地址值设置列地址值 JNB 50H,WRI_3 LCALL PR3;区域区域E2 SJMP WRI_4WRI_3:LCALL PR0;区域区域E1第四章 人机接口WRI_4:MOV A,CODE_SED;取间址寄存器值取间址寄存器值 MOVC A,A+DPTR;取汉字字模数据取汉字字模数据 MOV DAT,A;写数据写数据 JNB 50H,WRI_5 LCALL PR4;区域区域E2 SJMP WRI_6WRI_5:LCALL PR1;区域区域E1WRI_6:INC CODE_SED;间址寄存器加一间址寄存器加一 INC COLUMN;列地址寄存器加一列地址寄存器加一 MOV A,COLUMN;判列地址是否超出区域范围、判列地址是否超出区域范围、CJNE A,#PD1,WRI_7WRI_7:JC WRI_8;未超出则继续未超出则继续 JB 50H,WRI_8;在区域在区域E2 则退出则退出 SETB 50H;在区域在区域E1 则修改成区域则修改成区域E2 MOV COM,#00H;设置区域设置区域E2列地址为列地址为0 LCALL PR3WRI_8:DJNZ COUNT,WRI_4;当页循环当页循环第四章 人机接口 MOV A,PAGE_SED;读页地址寄存器读页地址寄存器 JB ACC.7,WRI_9;判完成标志判完成标志D7 位位,1则完成退出则完成退出 INC A;否则页地址加一否则页地址加一 SETB ACC.7;置完成位为置完成位为1 MOV PAGE_SED,A CLR 50H MOV CODE_SED,#8H;间址寄存器设置为间址寄存器设置为8 LJMP WRI_1;大循环大循环WRI_9:RET第四章 人机接口初始化程序INIT:MOV COM,#0E2H;复位复位 LCALL PR0 LCALL PR3 MOV COM,#0A4H;关闭休闭状态关闭休闭状态 LCALL PR0 LCALL PR3 MOV COM,#0A9H;设置设置 132 占空比占空比 LCALL PR0 LCALL PR3 MOV COM,#0A0H;正向排序设置正向排序设置 LCALL PR0 LCALL PR3 第四章 人机接口 MOV COM,#0C0H;设置显示起始行为第一行设置显示起始行为第一行 LCALL PR0 LCALL PR3 MOV COM,#0AFH;开显示设置开显示设置 LCALL PR0 LCALL PR3 RET第四章 人机接口清屏CLEAR:MOV R4,#00H;页面地址暂存器设置页面地址暂存器设置 CLEAR1:MOV A,R4;取页地址值取页地址值 ORL A,#0B8H;或或页面地址设置代码页面地址设置代码 MOV COM,A;页面地址设置页面地址设置 LCALL PR0 LCALL PR3 MOV COM,#00H;列地址设置为列地址设置为0 LCALL PR0 LCALL PR3 第四章 人机接口 MOV R3,#50H;一页清一页清 80个字节个字节 CLEAR2:MOV DAT,#00H;显示数据为显示数据为0 LCALL PR1 LCALL PR4 DJNZ R3,CLEAR2;页内字节清零循环页内字节清零循环 INC R4;页地址暂存器加一页地址暂存器加一 CJNE R4,#04H,CLEAR1;RAM 区清零循环区清零循环 RET第四章 人机接口2 MCS-51与键盘的接口v键盘是联系人与机的桥梁。键盘按其工作原理可分为编码式键盘是联系人与机的桥梁。键盘按其工作原理可分为编码式键盘和非编码式键盘。键盘和非编码式键盘。v编码式键盘是由按键键盘和专用键盘编码器两部分组成,其编码式键盘是由按键键盘和专用键盘编码器两部分组成,其使用很方便。使用很方便。v非编码键盘不含编码器,当某键被按下时,键盘只能送出一非编码键盘不含编码器,当某键被按下时,键盘只能送出一个简单的闭合信号,对应的按键代码的确定必须借助软件来个简单的闭合信号,对应的按键代码的确定必须借助软件来完成;非编码键盘软件较复杂,但它可以任意组合、成本低、完成;非编码键盘软件较复杂,但它可以任意组合、成本低、使用灵活,因而非编码键盘在单片机系统中被广为采用。使用灵活,因而非编码键盘在单片机系统中被广为采用。第四章 人机接口非编码键盘的分类v非编码键盘按照与单片机连接方式的不同,有独立式键盘和非编码键盘按照与单片机连接方式的不同,有独立式键盘和矩阵式键盘之分。矩阵式键盘之分。v独立式键盘结构的特点是一键一线,即每个按键单独占用一独立式键盘结构的特点是一键一线,即每个按键单独占用一根单片机的口线;这种连接方式键盘结构简单,各个键相互根单片机的口线;这种连接方式键盘结构简单,各个键相互独立,所以按键识别容易,但占用单片机口线较多。独立,所以按键识别容易,但占用单片机口线较多。v矩阵式键盘结构的特点是把检测线分成两组,一组为行线,矩阵式键盘结构的特点是把检测线分成两组,一组为行线,一组为列线,按键放在行线和列线的交叉点上;这种连接方一组为列线,按键放在行线和列线的交叉点上;这种连接方式占用单片机口线较少,但软件编程麻烦。式占用单片机口线较少,但软件编程麻烦。第四章 人机接口键盘接口功能键盘接口至少必须具有如下功能:键盘接口至少必须具有如下功能:v去抖动去抖动v防窜键防窜键v按键识别按键识别第四章 人机接口去抖动v由于按键一般都采用触点式按键开关,当按键被按下由于按键一般都采用触点式按键开关,当按键被按下或释放时,按键触点的弹性会产生一种抖动现象。即或释放时,按键触点的弹性会产生一种抖动现象。即当按键按下时,触点不会迅速可靠地接通;当按键释当按键按下时,触点不会迅速可靠地接通;当按键释放时,触点也不会立即断开,而是要经过一段时间的放时,触点也不会立即断开,而是要经过一段时间的抖动才能稳定下来,抖动时间视按键材料的不同一般抖动才能稳定下来,抖动时间视按键材料的不同一般在在5ms-10ms之间。之间。抖动可能导致将一次按键识别为抖动可能导致将一次按键识别为多次。多次。v有硬件去抖动和软件有硬件去抖动和软件延时延时去抖动两种方法。硬件去抖去抖动两种方法。硬件去抖动增加成本;一般多采用软件动增加成本;一般多采用软件延时延时去抖动。去抖动。第四章 人机接口防窜键v所谓窜键指的是有多个按键同时被按下或者前面按所谓窜键指的是有多个按键同时被按下或者前面按键没有释放又有新按键按下的情况。常用的防窜键键没有释放又有新按键按下的情况。常用的防窜键措
展开阅读全文