2008_GCS微机原理Ch10_键盘显示器接口.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2008_GCS微机原理Ch10_键盘显示器接口

第10章 MCS-51与键盘、显示器的接口设计 键盘和显示器 10.1 LED显示器接口原理 LED(Light Emitting Diode)数码管 共阳极数码管 共阴极数码管 每个显示字形对应一个二进制数码,称为段码、字形码或显示代码 公共端称为位码 电路图 字型表 工作方式 数码与显示码之间要有转换方法: 硬件法:使用译码集成电路 软件法:使用查表法得到显示码 静态方式:恒定点亮 动态方式:每个一段时间点亮一次即轮流点亮 注意:导通电流和点亮时间比例。 静态显示工作方法 动态显示工作方法 硬件: 段码控制线来控制显示字形(段码) 公共极COM端(位码) 软件: 查段码表 实现各位轮流点亮 注意 要根据数码管的大小,确定驱动电路,包括位码驱动和段码驱动 6位动态显示器的接口电路图 6位动态显示器的显示程序框图 6位动态显示器的显示程序 键盘由一组常开的按键开关组成,每个按键都被赋予一个代码,称为键码。 键盘可以分为二种,即编码键盘和非编码键盘。 编码键盘是通过一个编码电路来识别闭合键的键码, 非编码键盘是通过软件来识别键码。 由于非编码键盘的硬件电路简单,用户可以方便地增减键的数量,因此在单片机系统中应用广泛。这里着重介绍非编码键盘的接口电路。 1.按键电路和消除抖动 组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。在下图左中,当开关S未被按下时,P1.7输入为高电平,S闭合后,P1.7输入为低电平。由于按键是机械触点,当机械触点断开、闭合时,会有抖动动,P1.7输入端的波形如图右所示。 按键电路和消除抖动 抖动持续时间的长短与开关的机械特性有关,一般在5一l0ms之间。这种抖动对于人来说是感觉不到的,但对计算机来说,则是完全可以感应到的,因为计算机处理的速度是在微秒级,而机械抖动的时间至少是毫秒级,对计算机而言,这已是一个“漫长”的时间了。我们在做单片机应用系统时会遇到这样个问题,就是说按键有时灵,有时不灵,其实就是这个原因,你只按了一次按键,可是计算机却已执行了多次中断的过程,如果执行的次数正好是奇数次,那么结果正如你所料,如果执行的次数是偶数次,那就不对了。 为使CPU能正确地读出P1口的状态,对每一次按键只作一次响应,就必须考虑如何去除抖动. 独立式按键电路图 行列式键盘的电路原理图 例-8031与非编码键盘的接口 键盘处理程序编程要点 判断有无键闭合 消除键抖动 求闭合键的键号 判断闭合键有无释放 若释放结束处理 (1)判断有无键闭合 判断键盘中有无键按下。由PA口输出00H,再将PC口的状态读入,若PC0一PC3全为1,说明无键按下,若不全为l则有键按下。 (1)判断有无键闭合的程序部分 (2)消除抖动 消除抖动。当发现有键按下时,延时一段时间后再判断键盘的状态,若仍有键保持按下状态,则可断定有键按下,否则认为是抖动。 (2)消除抖动的程序部分 (3)求闭合键的键号 从PA口依次输出下列扫描信号。每次输入扫描信号后,检查PC口的状态,若某一位为0,说明闭合的键在该行,即可确定闭合键的行和列。 (3)求闭合键的键号的程序部分 8279键盘显示器接口芯片(P246) 实现对键盘和显示器的自动扫描 识别闭合键的键号 完成显示器的动态扫描 8279引脚及逻辑符号 8279的内部结构 工作原理 由SL0~SL3输出键盘和显示器的扫描线 回复线RL0~RL7作为键盘的列线以有哪些信誉好的足球投注网站闭合键将键盘数据送入FIFO存储器, 有键闭合时数据进入FIFO存储器,使IRQ置位向CPU申请中断。 显示缓冲区(RAM)存放显示数据的段码,数据轮流从显示寄存器输出,在SL0~SL3的配合下,实现动态显示。(OUTA和OUTB) 接口方法 控制线连接: 、 、 、A0、IRQ、CLK及RESET 信息交换:命令字、状态字(A0=1)和数据(A0=0); 口地址的确定:由 A0确定出两个端口地址 IRQ经反相器接INT0;CLK接时钟线(ALE) 程序初始化 写入清除命令字(清除FIFO和显示RAM) 等待清除结束(100uS)(读状态字) 置键盘/显示方式字 设置外部时钟分频系数 中断初始化(触发方式、开中断) 显示子程序 置写显示命令字 指向显示缓冲区 查表求出显示代码 显示完毕返回 键盘中断服务程序 保护现场 置读FIFORAM命令字(仅读一个单元) 通过数据口读出键码 恢复现场 中断返回 LK2: MOV R2,#0FEH ;R2一第一次扫描输出信号 MOV R4,#00H ;R4一列号 LK3: MOV DPTR,#7F0lH

文档评论(0)

tiangou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档