《显示与键盘接口技术.ppt》由会员分享,可在线阅读,更多相关《显示与键盘接口技术.ppt(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第6 6章章 显示与显示与键键盘接口技术盘接口技术本章要点本章要点:LEDLED数码管及编码方式数码管及编码方式静态显示方式及其典型应用电路静态显示方式及其典型应用电路动态显示方式及其典型应用电路动态显示方式及其典型应用电路键盘去抖动和连接、控制方式键盘去抖动和连接、控制方式矩阵式键盘及其接口电路矩阵式键盘及其接口电路键盘、显示接口电路应用举例键盘、显示接口电路应用举例6-1 6-1 显示接口显示接口为了便于人机交互,通常需要用一种显示器作为单片机的输出设备,用来显示单片机系统的键输入设定值、中间信息以及系统运行结果等。单片机应用系统中,常用的显示器主要有LED(发光二极管显示器)和LCD(
2、液晶显示器)。这两种显示器具有耗电小、配置灵活、线路简单、安装方便、耐振动、寿命长等优点。一、一、LEDLED数码管数码管LEDLED数码管分类:数码管分类:按其内部结构可分为按其内部结构可分为共阴极型共阴极型和和共阳极型共阳极型。按显示颜色也有多种形式,主要有按显示颜色也有多种形式,主要有红色红色和和绿色绿色。正向压降一般为正向压降一般为2V2V,额定电流为,额定电流为10mA10mA,最大,最大电流为电流为40mA40mA。按亮度强弱可分为按亮度强弱可分为超亮超亮、高亮高亮和和普亮普亮。二、二、LEDLED数码管编码方式数码管编码方式表表5-1 5-1 共阴和共阳共阴和共阳LEDLED数码
3、管几种八段编码表数码管几种八段编码表 显示显示数字数字共阴顺序小数点暗共阴顺序小数点暗 共阳顺序共阳顺序小数点暗小数点暗Dp g f e d c b aDp g f e d c b a1616进制进制 Dp g f e d c b aDp g f e d c b a1616进制进制0 00 0 1 1 1 1 1 10 0 1 1 1 1 1 10 x3F0 x3F1 1 0 0 0 0 0 01 1 0 0 0 0 0 00 xC00 xC01 10 0 0 0 0 1 1 00 0 0 0 0 1 1 00 x060 x061 1 1 1 1 0 0 11 1 1 1 1 0 0 10 x
4、F90 xF92 20 1 0 1 1 0 1 10 1 0 1 1 0 1 10 x5B0 x5B1 0 1 0 0 1 0 01 0 1 0 0 1 0 00 xA40 xA43 30 1 0 0 1 1 1 10 1 0 0 1 1 1 10 x4F0 x4F1 0 1 1 0 0 0 01 0 1 1 0 0 0 00 xB00 xB04 40 1 1 0 0 1 1 00 1 1 0 0 1 1 00 x660 x661 0 0 1 1 0 0 11 0 0 1 1 0 0 10 x990 x995 50 1 1 0 1 1 0 10 1 1 0 1 1 0 10 x6D0 x6D1
5、 0 0 1 0 0 1 01 0 0 1 0 0 1 00 x920 x926 60 1 1 1 1 1 0 10 1 1 1 1 1 0 10 x7D0 x7D1 0 0 0 0 0 1 01 0 0 0 0 0 1 00 x820 x827 70 0 0 0 0 1 1 10 0 0 0 0 1 1 10 x070 x071 1 1 1 1 0 0 01 1 1 1 1 0 0 00 xF80 xF88 80 1 1 1 1 1 1 10 1 1 1 1 1 1 10 x7F0 x7F1 0 0 0 0 0 0 01 0 0 0 0 0 0 00 x800 x809 90 1 1 0 1
6、 1 1 10 1 1 0 1 1 1 10 x6F0 x6F1 0 0 1 0 0 0 01 0 0 1 0 0 0 00 x900 x90【例例】已已知知要要显显示示的的数数为为9898,试试将将其其转转换换为为2 2位位共共阳阳字字段段码(顺序)。码(顺序)。(1)(1)将将9898除以除以1010,商,商(9)(9)就是十位数,余数就是十位数,余数(8)(8)就是个位数。就是个位数。(2)(2)查查表表5 51 1可可得得,9 9的的显显示示字字段段码码为为0 x90,0 x90,而而8 8的的的的显显示示字字段码为段码为0 x800 x80。从显示数中分离出显示的每一位数字从显示数中
7、分离出显示的每一位数字 方法是将显示数除以十进制的权方法是将显示数除以十进制的权显示数显示数转换转换为显示字段码的为显示字段码的步骤步骤:将分离出的数字转换为显示字段将分离出的数字转换为显示字段码码 方法是采用数组查表方法是采用数组查表三、三、静态显示方式及其典型应用电路静态显示方式及其典型应用电路 动态显示方式动态显示方式,在某一瞬时显示一位,依次循环,在某一瞬时显示一位,依次循环扫描,轮流显示,由于人的视觉滞留效应,人们看到扫描,轮流显示,由于人的视觉滞留效应,人们看到的是多位同时稳定显示。的是多位同时稳定显示。特点特点:占用:占用I/OI/O口线少,电路较简单,编程较复杂,口线少,电路较
8、简单,编程较复杂,CPUCPU要定时扫描刷新显示。一般适用于显示位数较多要定时扫描刷新显示。一般适用于显示位数较多的场合。的场合。LEDLED数码管显示分类:静态显示方式和动态显示方式。数码管显示分类:静态显示方式和动态显示方式。静态显示方式静态显示方式,每一位字段码分别从,每一位字段码分别从I/OI/O口(或输口(或输出锁存器)输出,保持不变直至显示数据更新。出锁存器)输出,保持不变直至显示数据更新。特点特点:编程较简单,但占用:编程较简单,但占用I/OI/O口线多,一般适用口线多,一般适用于显示位数较少的场合。于显示位数较少的场合。1 1、并行扩展静态显示电路并行扩展静态显示电路 注意注意
9、:74LS37774LS377为带输出允许控制的为带输出允许控制的8 8位锁存器,位锁存器,OEOE端为低电平,端为低电平,且且CLKCLK端上升沿端上升沿时,时,D D端数据被锁存,从相应的端数据被锁存,从相应的Q Q端输出。端输出。2 2、BCDBCD码输出静态显示电路码输出静态显示电路 注意:注意:CD4511是一个用于驱动是一个用于驱动共阴极共阴极LED显示显示器的器的BCD码码-锁存锁存/7段译码段译码/驱动器,驱动器,其输入为数字的其输入为数字的8421BCD,输出,输出为相应数字的显为相应数字的显示字段码,示字段码,LE为为锁存控制端,低锁存控制端,低电平有效。电平有效。动态显示
10、电路动态显示电路连结形式:连结形式:显示各位的所有显示各位的所有相同字段线连在一起,相同字段线连在一起,共共8 8段,由一个段,由一个8 8位位I/OI/O口控制。口控制。每一位的公共端每一位的公共端(共阳或共阴(共阳或共阴COMCOM)由另一个由另一个I/OI/O口控制。口控制。四、四、动态显示方式动态显示方式多位多位LED数码管有字段码输入端数码管有字段码输入端a、b、c、d、e、f、g、dp和位码输入端和位码输入端com1、com2,只有在相应,只有在相应位位码输入有效的前提下,相应位的字符才可被点亮。位位码输入有效的前提下,相应位的字符才可被点亮。由于在动态显示方式下,每位显示时间比较
11、短,由于在动态显示方式下,每位显示时间比较短,为了达到足够的亮度,需要较大的瞬时电流,所以必为了达到足够的亮度,需要较大的瞬时电流,所以必须加接须加接驱动电路驱动电路,如,如74067407ULN2003A等或用分立等或用分立元件三极管作为驱动器。动态显示时,一般在每位上元件三极管作为驱动器。动态显示时,一般在每位上持续点亮持续点亮12ms,每隔,每隔20ms左右重复点亮一遍,重左右重复点亮一遍,重复扫描时间不能超过复扫描时间不能超过40ms,这样就可实现稳定显示多,这样就可实现稳定显示多位字符。位字符。LED动态显示实例动态显示实例 本例是应用本例是应用AT89C51单片机实现秒表功能。设计
12、要求:单片机实现秒表功能。设计要求:采采用用4位共阳极位共阳极LED设计设计4位数的位数的LED动态显示电路,其功能为秒动态显示电路,其功能为秒计时,从计时,从0开始,加到秒时,自动归开始,加到秒时,自动归0,周而复始循环计时,具,周而复始循环计时,具有自动灭零功能。有自动灭零功能。(一一)、参考电路、参考电路 单片机采用单片机采用AT89C51,系统时钟,系统时钟fosc=12MHz,LED显示器显示器为为4位共阳极数码管,位共阳极数码管,P0口为字段码输出,口为字段码输出,P2口为位码输出,口为位码输出,低电平有效,其具体参考电路如下图所示。低电平有效,其具体参考电路如下图所示。(三三)、
13、绘制电路原理图并仿真、绘制电路原理图并仿真1、用Keil编译器编译连接产生调试文件(.hex文件)2、打开ProteusProfessional软件。3、从Proteus元件库中选取元器件。AT89C51(单片机单片机)、CAP(电容电容)、CRYSTAL(晶振晶振)、CAP-ELEC(电解电容电解电容)、RES(电阻电阻)、RESPACK-8(排阻排阻)、7406、7SEG-MPX4-CA(4位共阳极数码管位共阳极数码管)。4、放置元器件、电源和地并连线。5、设置元器件属性。按电路所需设置元器件的属性值。6、加载目标代码文件。注意将Clock Frequency栏中的频率设为12MHz。7、
14、单击仿真启动按钮,全速运行程序。8、观察并记录4位数码管的计时现象,注意观察是否能实现所要求的功能。【分析与练习】【分析与练习】若将电路中的共阳极数码管改成共阴极若将电路中的共阳极数码管改成共阴极数码管,电路和程序应如何修改以实现相数码管,电路和程序应如何修改以实现相同功能?同功能?6-2 6-2 键盘接口键盘接口键盘在单片机系统中是一个很重要的部件,它主要用键盘在单片机系统中是一个很重要的部件,它主要用于于输入数据输入数据、查询和控制系统的工作状态查询和控制系统的工作状态,是人工干预计,是人工干预计算机的主要手段。算机的主要手段。微机中所用的键盘可分为微机中所用的键盘可分为编码键盘编码键盘和
15、和非编码键盘非编码键盘两种。两种。编码键盘采用硬件电路来实现键盘编码,每按一个键,键编码键盘采用硬件电路来实现键盘编码,每按一个键,键盘能自动产生按键代码,键数较多,而且还具有多键处理盘能自动产生按键代码,键数较多,而且还具有多键处理和硬件去抖动功能。和硬件去抖动功能。非编码键盘仅提供按键开关工作状态,非编码键盘仅提供按键开关工作状态,其他工作由软件完成,这种键盘键数较少,硬件简单,一其他工作由软件完成,这种键盘键数较少,硬件简单,一般在单片机应用系统中广泛使用般在单片机应用系统中广泛使用。1 1、按键开关去抖动问题按键开关去抖动问题 键盘的抖动时间一般为键盘的抖动时间一般为5 510ms10
16、ms,抖动现象会引起抖动现象会引起CPUCPU对一次键操作进行多次处理,从而可能产生错误对一次键操作进行多次处理,从而可能产生错误。一、一、键盘接口概述键盘接口概述 硬件去抖动硬件去抖动 消除抖动不良后果的方法:消除抖动不良后果的方法:其中其中RCRC滤波电路去抖动电路简单实用,效果较好滤波电路去抖动电路简单实用,效果较好。软件去抖动软件去抖动 检测到按键按下后,执行检测到按键按下后,执行延时延时10ms10ms子程序后再确认子程序后再确认该键该键是否确实按下,消除抖动影响。是否确实按下,消除抖动影响。2 2、按键连接方式按键连接方式独立式按键独立式按键独立式按键是每个按键占用一根独立式按键是
17、每个按键占用一根I/O端线端线。特点:特点:各按键相互独立,电路配置灵活;各按键相互独立,电路配置灵活;按键数量较多时,按键数量较多时,I/O端线耗费较多,电路结构繁杂;端线耗费较多,电路结构繁杂;软件结构简单。软件结构简单。适用于按键数量较少的场合适用于按键数量较少的场合。矩阵式键盘矩阵式键盘I/O端线分为行线和列线,按键跨接在行线和列线上,按端线分为行线和列线,按键跨接在行线和列线上,按键按下时,行线与列线发生短路键按下时,行线与列线发生短路。特点:特点:占用占用I/O端线较少;端线较少;软件结构较复杂。软件结构较复杂。适用于按键较多的场合适用于按键较多的场合。3 3、键盘扫描控制方式键盘
18、扫描控制方式 程序控制扫描方式程序控制扫描方式 利用利用CPUCPU在完成其他工作的空余,由主程序调用键盘扫描子在完成其他工作的空余,由主程序调用键盘扫描子程序来实现按键输入。程序来实现按键输入。特点特点:对:对CPUCPU工作影响小,但应考虑键扫描间隔周期不能太长,工作影响小,但应考虑键扫描间隔周期不能太长,否则会影响对键输入响应的及时性。否则会影响对键输入响应的及时性。定时控制扫描方式定时控制扫描方式 利利用用定定时时/计计数数器器每每隔隔一一段段时时间间产产生生定定时时中中断断,CPUCPU响响应应中中断后调用键盘扫描子程序来实现按键输入。断后调用键盘扫描子程序来实现按键输入。特点特点:
19、与程序控制扫描方式的区别是,在扫描间隔时间内,:与程序控制扫描方式的区别是,在扫描间隔时间内,前者用前者用CPUCPU工作程序填充,后者用定时工作程序填充,后者用定时/计数器定时控制。注意计数器定时控制。注意定时时间不能太长,否则会影响对键输入响应的及时性。定时时间不能太长,否则会影响对键输入响应的及时性。中断控制方式中断控制方式 中断控制方式是利用外部中断源,响应键输入信号。中断控制方式是利用外部中断源,响应键输入信号。特点特点:克服了前两种控制方式可能产生的空扫描和不能及时:克服了前两种控制方式可能产生的空扫描和不能及时响应键输入的缺点,既能及时处理键输入,又能提高响应键输入的缺点,既能及
20、时处理键输入,又能提高CPUCPU运行效运行效率,但要占用一个宝贵的中断资源。率,但要占用一个宝贵的中断资源。二、二、独立式按键及其接口电路独立式按键及其接口电路单单片片机机应应用用系系统统中中,若若使使用用按按键键较较多多时时,通通常常采采用用矩矩阵阵式式(也也称称行行列列式式)键键盘盘。矩矩阵阵式式键键盘盘由由行行线线和和列列线线组组成成,按按键键位位于于行行、列列线线的的交交叉叉点点上上,其其结结构构如如下下图图所所示示。由由图图可可知知,一一个个44的的行行、列列结结构构可可以以构构成成一一个个含含有有16个个按按键键的的键键盘盘,显显然然,在在按按键键数数量量较较多多时时,矩矩阵阵式
21、式键键盘盘较较之之独独立立式式按按键键键键盘盘要要节节省很多省很多I/O口线。口线。三、三、矩阵式键盘及其接口电路矩阵式键盘及其接口电路 1、矩阵式键盘及其接口电路矩阵式键盘及其接口电路 注意:注意:按键编号按键编号=行编号行编号4+列编号列编号矩阵式键盘扫描程序一般应包括以下内容:矩阵式键盘扫描程序一般应包括以下内容:(1)判别有无键按下。判别有无键按下。(2)键盘扫描取得闭合键的键值。键盘扫描取得闭合键的键值。(3)用计算法或查表法得到闭合键的键号。用计算法或查表法得到闭合键的键号。(4)判断闭合键是否释放,如没释放则继续等待。判断闭合键是否释放,如没释放则继续等待。(5)将将闭闭合合键键
22、键键号号保保存存,同同时时转转去去执执行行该该闭闭合合键键的的功能。功能。2、编制键盘扫描程序、编制键盘扫描程序键盘、显示接口电路键盘、显示接口电路实实例例 本例是应用AT89C51单片机设计一个44矩阵式键盘与单片机的接口电路,并编写相应的应用程序,以实现按键的识别。设计要求:该键盘共有该键盘共有16个按键,编号从个按键,编号从116,刚开始时,刚开始时LED上显示上显示P-,然后每按一个按键,该键的键号在,然后每按一个按键,该键的键号在LED数码管上显数码管上显示出来。示出来。(一一)、参考电路、参考电路单片机采用AT89C51,P1口作为矩阵式键盘的接口,其中为行线,为列线;P0口和P2
23、口分别作为数码管的段码接口和位码接口,系统时钟fosc=12MHz,其具体参考电路如下图所示。(三三)、绘制电路原理图并仿真、绘制电路原理图并仿真1、用Keil编译器编译连接产生调试文件(.hex文件)2、打开ProteusProfessional软件。3、从Proteus元件库中选取元器件。AT89C51(单片机单片机),CAP(电容电容),CRYSTAL(晶振晶振),RES(电阻电阻),7406,CAP-ELEC(电解电容电解电容),RESPACK-8(排阻排阻),7SEG-MPX4-CA(共阳极数码管共阳极数码管),BUTTON(按键按键)。4、放置元器件、电源和地并连线。5、设置元器件
24、属性。按电路所需设置元器件的属性值。6、加载目标代码文件。注意将Clock Frequency栏中的频率设为 12MHz。7、单击仿真启动按钮,全速运行程序。8、观察并记录LED显示的数字,注意观察按下按键,LED上是否能显示相应按键的键号,即完成键盘输入及按键识别功能。1、分析键盘扫描函数是如何实现按键识别、分析键盘扫描函数是如何实现按键识别并获得键号?并获得键号?2、参考电路中,单片机对键盘处理控制的、参考电路中,单片机对键盘处理控制的方式是采用程序控制扫描法来实现的,若方式是采用程序控制扫描法来实现的,若改成中断控制方式,是否可行,若可以,改成中断控制方式,是否可行,若可以,应如何改?应如何改?【分析与练习】【分析与练习】THANK YOU VERY MUCH!本章到此结束,本章到此结束,谢谢大家!谢谢大家!结束放映返回本章首页