网站大量收购闲置独家精品文档,联系QQ:2885784924

《单片机原理与应用》课件第7章.ppt

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

4.电路板制作1)元器件清单四路抢答器电路元器件清单如表7-7所示。表7-7四路抢答器电路元器件清单2)四路抢答器电路的面包板制作四路抢答器电路面包板实物如图7-33所示。图7-33四路抢答器电路3)调试运行在Keil环境中,对源程序A7_5.ASM或C7_5.C进行编辑、汇编或编译,生成机器代码并下载到芯片里。接通电路板电源,若无任何按键按下,则四个数码管均无显示。若“开始”键未按下前,有选手非法抢答则会显示如图7-34所示的内容(以2号选手为例)。若主持人按下“开始”键,会有如图7-35所示的显示表示可以开始抢答。图7-34选手非法抢答图7-35开始抢答若此时2号选手抢答成功,则显示如图7-36所示。若2号选手回答超时,则会有如图7-37所示的显示。图7-36抢答成功图7-37回答超时问:对于矩阵式键盘按键的识别,除了前面讲的扫描法外,还有其他更简便的方法吗?答:有。对于矩阵键盘按键的识别,除了扫描法外,还有一种更简便的方式——线反转法。前面讲的扫描法需要逐行或逐列扫描查询,通常要多次扫描才可以确定按键位置。相比而言,线反转法则要简练很多,无论按键处于哪个位置,均只需经过两步就能获得此按键所在的行列值。线反转法在硬件上要求行线与列线均外接上拉电阻,如图7-38所示。7.4互动环节图7-38采用线反转法的矩阵式键盘线反转法识别按键的过程如下:先将行线作为输出线,列线作为输入线,行线输出全“0”信号,读入列线的值,那么在闭合键所在的列线上的值必为0;然后从列线输出全“0”信号,再读取行线的输入值,闭合键所在的行线值必为0。这样,当一个键被按下时,必定可读出一对唯一的行列值,再由这一对行列值可以求出闭合键所在的位置。下面以3#键被按下为例来说明线反转法的处理过程:第一步,P1.0~P1.3输出全为“0”,然后,读入P1.4~P1.7线的状态,结果P1.4为0,而P1.5~P1.7均为1,表明第1行有键按下;第二步,让P1.4~P1.7输出全为“0”,然后,读入P1.0~P1.3位,结果P1.0为0,而P1.1~P1.3均为1,表明第4列有键按下。综上可见,第1行、第4列按键被按下,即3#键按下。知识回顾与项目小结本章从任务制作入手,介绍了单片机与常见显示输出器件(LED数码管和LED点阵显示器)及输入器件(独立式按键和矩阵式键盘)之间的接口及编程应用。任务1介绍了LED数码管的静态显示接口技术;任务2介绍了LED点阵显示器的应用,主要对LED点阵显示器的动态显示进行练习;任务3介绍了独立式按键的应用;任务4详细介绍了中断控制方式的矩阵式键盘与单片机的接口技术;任务5通过一个抢答器的设计,将按键查询程序、按键扫描程序、按键处理程序、多个LED数码管的动态显示程序、定时器中断服务程序等结合起来,是对前面所学知识的综合训练。本章重点内容如下:(1)LED数码管静态显示;(2)LED数码管动态显示;(3)独立式按键的接口技术;(4)矩阵式键盘的接口技术。4.矩阵式按键1)矩阵式键盘的结构在单片机系统中,当有多个功能键时(一般多余8个),常采用矩阵式键盘。矩阵式键盘也叫行列式键盘,其由行线和列线组成,按键位于行、列线的交叉点上。图7-29给出了4?×?4的矩阵式键盘与单片机的接口电路。可见,一个4?×?4的行、列结构可构成一个含有16个按键的键盘。显然,在按键数量较多时,矩阵式键盘较之独立式按键要节省很多I/O口。图7-29矩阵式键盘与单片机接口电路2)矩阵式键盘按键的识别矩阵式键盘按键的识别方法很多,其中最常见的方法是扫描法。扫描法识别按键分为以下两个步骤。(1)判断有无按键按下。向所有的列线上输出低电平,再读入所有行的信号。若有任意一个按键被按下,那么读入的行电平则不全为高。如图7-29,如果12#键被按下,则12#键所在的第4行与第1列导通,第4行被拉低,读入的行信号为低电平,表明有键按下。通过判别行线的高低能判定有无按键按下,却无法判定是该行上的哪个按键被按下,因为每一行上都连接有多个按键,每个按键按下均能使行线拉低。因此,需要将行线和列线信号配合起来作适当处理,才能确定闭合键的位置。(2)判定具体的按键。方法是往列线上逐个送低电平,首先送第1列为低电平,第2、3、4列为高电平,读入的行电平状态就显示了位于第1列的0#、4#、8#、12#四个按键的状态,若读入的行信息为全高,则表示无键按下;再送第2列为低电

文档评论(0)

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

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

1亿VIP精品文档

相关文档