项目三 键盘控制显示.pptx

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

项目三 键盘控制显示;3.1 认识开关及按键;3.2 键击动作转换为数字信息 3.2.1 轻触开关电路 轻触按键是机械弹性触点式,内部装有弹片,当施加外力克服弹片阻力时,触点闭合,接通按键的两个引脚,当外力撤除时在弹力的作用下触点断开。在闭合、断开的过程中,由于机械弹性振动造成按键抖动,从而带来电平高低之间振荡。如下图所示: 从上图中我们可以看出,一次按键过程:高电平→前沿抖动→低电平→后沿抖动→高电平,一般抖动的时间在5~10MS(主要取决于机械特性),而整个按键过程的时间则取决于操作的人员。;3.2.2 键盘电路 键盘电路一般由一个或多个按键组成,在小家电上一个键盘通常只有几个按键,在手机上有十几个按键,计算机的键盘有100多个按键。键盘电路通常又分为:独立式键盘、行列式键盘。按键的信息可以用位或数值来表示。 1、独立式键盘电路 独???式键盘电路,每个按键直接连接单片机的I/O口,每个端口均带上接电阻。识别时只需对端口进行高低电平的判别就可,识别较为简单。;2、矩阵(行列)式键盘 (1)三行两例(3X2)键盘电路 图中P2.0、P2.1、P2.2为行线,P2.3、P2.4为列线。根据数学中的平面坐标我们可知道,平面中的点可用水平和垂直坐标值来表示:即S1~S6的坐标值可分别表示为(0,0)、(0,1);(1,0),(1,1);(2,0),(2,1),且具有唯一性,识别时较为复杂。;(2)串行驱动行列式键盘电路 使用串行驱动可以大大减少I/O口的使用, 图中使用74LS164(真值表见右图)后,只 占用了4个I/O口,可实现16个按键的功能。 但这样会使得键盘软件部分变得复杂。 ;(3)使用外部中断构成高灵敏度、高效率的行列式键盘电路 因按键是可能随时发生,因此前面所述键盘电路,需要不断的扫描按键,这就占用了CPU的大量资源,当CPU在处理按键任务时,此时如有按键CPU不会响应,造成灵敏度低。为此提出使用外部中断构成的高灵敏度、高效率的行例式键盘电路,因此只要有按键中断就会响应,并处理按键信息。;3.2.3 识别按键与计算键值 如前所述一次按键过程的动作完成将对应电平的变化,在识别过程中如何消除干扰,除去按键抖动,又如何通过电平的变化来识别一次有效的按键呢? 工程上一次有效按键要经过2~5次反复断判,最终才确定按键有效,以避免误动作或干扰。下图中将P2.0置0则S3、S6就相当于两个独立按键。;1、独立式键盘控制LED灯亮和灭 任务:结合实训硬件电路,开始LED灯全熄灭,每按下S3一次有效时,依次点亮P1.0~P1.7端口所接LED灯,如此循环。 (1)任务分析:完成这个任务的关键是按键识别,然后对有效按键进行计数,采用查表或直接送数的方式点亮LED灯。 (2)设计程序框图 构思:主程序只需写调用按键子程序,根据按键统计的值,执行不同的LED驱动数据。按键子程序只需对有效按键进行统计,有效则加1,并将统计结果存放在R3中,当无有效键按时R3不计数,保持原值不变。 整个程序分成三个部分:主程序、按键识别子程序、延时子程序(不讲)。;主程序框图:;按键识别子程序框图:;(3)编写程序 ;;(4)软件调试或硬件联机仿真调试 调试过程中主要检查程序控制的过程是否满足设计需求,是否存在逻辑思路错误或指令应用上的错误,观察控制数据是否正确。逐步修改直到达到设计要求,完成任务。 (5)烧录程序到芯片,并接入硬件电路检验控制过程 将编译后的十六进制或二进制机器代码文件,通过编程器,烧录到芯片中,在把芯片装入硬件电路,检验程序控制是否达到任务要求。如查未能实现任务目标,则需要细心分析当前程序控制的状态,检查程序可能否出问题的地方。然后再返回到第一步,重新思考。如果是设计思路出了问题,则需要重新选择方案。 本任务的完成,还可选用查表的方式实现,即按键计数器R3的内容,可作为查表的依据,来实现控制LED灯点亮过程,这里就不再详述。;实训四 按键控制LED灯;五、实训心得体会;2、行列扫描按键识别过程 上图为三行两列矩阵式键盘,即3X2行列式键盘,P2.0—P2.2分别为第0行、第1行、第2行;P2.3、P2.4分别为第0列、第1列。;(1)按键过程 无键按下时:如图所示,行线P2.0~P2.3输出0,列线P2.3和P2.4输出1,则列线输出1不受行线输出0的影响,依然为高电平1。;有键按下时:设下图圆圈中的S8按下,因行线P2.1为0,在线与的作用下,使得列线P2.4也由1变为0。此时读取列线的数据,可判别出是哪一列有键按下,从图中可以看出为第1列,有键按下,并记录好列值P2.4 P2.3为01,具体是S7、S8、S9的哪个,则需

文档评论(0)

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

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

1亿VIP精品文档

相关文档