7279键盘显示.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7279键盘显示

2.芯片内部结构及原理——74922芯片 74922芯片是专用编码键盘接口芯片 ,当按下某一按键时 ,该芯片能自动给出相应的编码信息 ,并可自动消除抖动 ,从而可使设计者免除一部分软件编程。74922芯片有16键 IC和20键 IC,图1所示为4 ×4(16键)扫描式编码键盘原理图。 图1 扫描式编码键盘 这种键盘的按键排成矩阵形式 ,以减少按键联线。如图中有16个键 ,排列成4行 4 列 ,仅需 8 根引线。时钟发生器的输出送给4位计数器进行计数 ,计数器的低 2 位经译码后作为行扫描 ,高2位经译码后作为列扫描。若没有检出有键闭合 ,则计数器周而复始反复计数 ,即反复进行扫描 ,一旦检出有键闭合 ,就发出一个脉冲使时钟振荡器停振 ,计数器随即停止计数。单片机通过读取计数器的计数值来获取闭合键所在的行列位置 ,然后从 ROM中查表 得到按键读数。如果有两个键同时按下 ,则扫描到第一个闭合键时就停止扫描 ,把该键当作有效按键进行处理。 74922芯片(16键 IC)的引脚排列如图2所示: X1~X4:列线。 Y1~Y4:行线。 OSC:接振荡电容0.1μ,以便扫描矩阵键盘KM:键盘消除抖动电路 ,并发出两 种信号(1)内计数器停止计数。(2)若有键按下 ,使DA脚由未按键时的低电平变为高电平,若按键未放开则一直保持高电平,当按键放开时,才转为低电平。此引脚外接一个电容是OSC所接电容的10倍。 图2 74922(16键)引脚排列 七段译码器7447 7447有4个 BCD码输入端 A、B、C和D,其中 D为最高有效位,A为最低有效位,它们分别与输出端口中的4位相连。7447的7个输出引脚 a~g直接与 LED的相应引脚相连,每个段中都串接一个限流电阻,其阻值为1Ω。当灭灯输入/动态灭灯输出(BI/RBO)开路或为高电平而试灯输入为低电平,则所有输出端都为1。BI/RBO是线与逻辑,作灭灯输入(BI)或动态灭灯(RBO)之用,或者兼为二者之用。 图7 表2 [1].要求0—15时,灭灯输入(BI)必须开路或保持高电平,如果不要灭十进制数零,则动态灭灯输入(RBI)必须开路或为高电平。 ??? [2].将一低电平直接输入BI端,则不管其他输入为何电平,所有的输出端均输出为低电平。 ??? [3].当动态灭灯输入(RBI)和A,B,C,D输入为低电平而试灯输入为高电平时,所有各段输出都为0,并且动态灭灯输出(RBO)为低电平(响应条件)。 ??? [4].当灭灯输入/动态灭灯输出(BI/RBO)开路或为高电平而试灯输入为低电平,则所有输出端都为1。 ????表中1=高电平,0=低电平。BI/RBO是线与逻辑,作灭灯输入(BI)或动态灭灯(RBO)之用,或者兼为二者之用。 三.电路与程序设计 1.硬件电路设计 键盘、显示硬件电路如图3所示。 图3  键盘、显示接口电路   本电路的特点是:不采用通常的总线接口方式 ,而是采用了非总线结构。其优点在于减少了扩展 I/O 口部分的芯片使用 ,用单片机的 I/O 线直接与外部芯片连接 ,使得硬件设计和软件编程相对简单。同时在外部芯片的选用中 ,采用硬件译码和硬件编码键盘控制芯片 ,实现了用尽可能少的 I/O线设计出尽可能大的键盘显示接口电路。电路中 ,在4 ×4键盘中每个按键的值是固定的 ,具体位置如图4所示 ,所以编程时只要建立一个 TABLE表 ,就可根据需要设计各种键盘。 图4  键盘值示意图 2.程序设计 ;********************* ;主程序 ;********************** ORG 0000H AJMP MAIN ORG 0003H AJMP LOOP1 ORG 0030H MAIN: MOV TCON,#00H MOV IE,#85H MOV P3,#0FFH JB P1.4,KEY AJMP MAIN KEY: JB P1.4$ MOV P2,#00H MOV A,P1 ANL A,#0FH MOV DPTR,#TABLE MOVC A,@A+DPTR ;********************* ;显示子程序 ;********************** A0: CJNE A,#00H,A1 SETB P2.0 MOV P0,A JB P1.4,KEY JNB P0.4,AA0 CLR P2.0 ACALL D_1S SETB P2.0 ACALL D_1S AA0:SJMP A

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档