单片机原理及接口技术 C51编程 教学课件 作者 张毅刚 第10章 键盘显示器接口.pptVIP

单片机原理及接口技术 C51编程 教学课件 作者 张毅刚 第10章 键盘显示器接口.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
10.1 LED数码管显示器的接口设计 LED(Light Emitting Diode)数码管应用非常普遍,由发光二极管构成。 10.1.1 LED数码管的工作原理 常见的LED数码管为“8”字型的,共计8段。每一段对应一个发光二极管。这种数码管显示器有共阳极和共阴极两种,如图10-1所示。共阴极LED数码管的发光二极管的阴极连接在一起,通常此公共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。 执行一段延时10ms的子程序后,检测该行线为高电平,说明按键确实已经松开。采取以上措施,可消除两个抖动期t1和t3的影响。另一种去除按键抖动的方法是采用专用的键盘/显示器接口芯片,这类芯片中都有自动去抖动的硬件电路。 10.2.2 键盘接口设计举例 键盘两类:非编码键盘和编码键盘。 非编码键盘按键直接与单片机相连,通常使用在按键数量较少的场合。用这种键盘,系统功能通常比较简单,需处理的任务较少,但可降低成本、简化电路设计。按下按键的键号信息通过软件来获取。 switch(keyvalue) { case 1: ……; /*处理0号键*/ break; case 2: ……; /*处理1号键*/ break; case 4: ……; /*处理2号键*/ break; case 8: ……; /*处理3号键*/ break; case 16: ……; /*处理4号键*/ break; case 32: ……; /*处理5号键*/ break; 10.3.2 利用串行口实现的键盘/显示器接口 当AT89S51的串行口未作它用时,可使用串口来外扩键盘/显示器。应用串行口方式0,外扩移位寄存器74LS164、74LS165来构成键盘/显示器接口,这是在实际的设计中,经常采用的一种方案,接口电路如图10-12所示。 命令中的a2、a1、a0表示LED数码管的位地址,表示显示数据应送给哪一位LED,a2、a1、a0=000表示LED最低位,a2、a1、a0=111表示LED最高位。d2、d1、d0为显示数据, HD7279A收到这些数据后,将按表10-6所示的规则译码和显示。dp为小数点显示控制位,dp=1时,小数点显示,dp=0时,小数点不显示。命令中的×××为无影响位。 例如,命令第一字节为80H,第二字节为08H,则L1位LED显示内容为8,小数点dp熄灭:命令第一字节为87H,第二字节为8EH,则L8位LED显示内容为P,小数点dp点亮。 b.按方式1译码显示命令 该命令和方式0译码显示的含义基本相同,不同的是译码方式为1,LED显示的内容与十六进制相对应,如表10-7。 d.闪烁控制命令 应注意,HD7279A只能给出其中一个按下键的代码,不适合两个或两个以上键同时按下的场合。如确实需双键组合使用,可在单片机某位I/O引脚接一键,HD7279A所连键盘共同组成双键功能。 ④ 时序 HD7279A用串行方式与单片机通信,串行数据从DATA引脚送入或输出,并与CLK端同步。当片选信号变为低电平后,DATA引脚上的数据在CLK脉冲上升沿作用下写入或读出HD7279A的数据缓冲器。 b.带数据命令时序 单片机发出16个CLK脉冲,前8个向HD7279A发送8位命令;后8个向HD7279A传送8位显示数据,DATA引脚最后为高阻态,如图10-15。 c.读键盘命令时序 单片机发出16个CLK脉冲,前8个向HD7279A发送8位命令;发送完之后DATA引脚为高阻态;后8个CLK由HD7279A向单片机返回8位按键值,DATA引脚为输出状态。最后一个CLK脉冲的下降沿将DATA引脚恢复为高阻态,如图10-16所示。 保证正确时序是HD7279A正常工作的前提。当选定HD7279A的振荡元件RC和单片机的晶振之后,应调节延时时间,使时序中的T1~T8满足表10-9所示要求。由表中的数值可知HD7279A的速度,应仔细调整HD7279A的时序,使其运行时间接近最短。 3.AT89S51单片机与HD7279A接口设计 (1)硬件接口电路 图10-17为AT89S51通过HD7279A控制8个LED数码管以及64键矩阵键盘的接口电路。晶振频率为12MHz。上电后,HD7279A大约经过15~18ms的时间才进入工作状态。单片机通过引脚的电平(已接至单片机P1.3脚,)来判断键盘矩阵中是否有按键按下。HD7279A采用动态循环扫描方式,如采用普通的LED数码管亮度不够,则可采用高亮度或超高亮度型号的LED数码管。

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档