- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 键盘和显示器接口设计;1. 对外设的选择
2. 数据传送速度的匹配
3. 数据的缓冲和锁存
4. 信息转换;1. 无条件传送方式
2. 查询方式
3. 中断方式
4. DMA方式;机械触点的弹性作用抖动,一般为5~10ms。
按键稳定闭合时间的长短一般为零点几秒到几秒的时间。
CPU确认一次按键动作(不重复、不遗漏),必须消除抖动的影响。
消除抖动方法:
软件消除抖动:
1.调用一段延时(约20ms)子程序
2.判断该按键的电平是否仍保持在闭合状态,如果是,则确认有键按下。 ;1.独立式按键
各个按键相互独立,分别接一条输入线。
通过检测输入线的电平状态,判断哪个按键被按下。
优点:电路配置灵活,软件设计简单
缺点:在按键数量较多时,占用大量的输入口资源
适用范围:按键较少或操作速度较高的场合。;2.矩阵式键盘:矩阵式键盘由行线和列线组成,按键位于行、列的交叉点上。 ;通过键盘扫描,监视键盘的输入;
确定具体按键,完成按键编码;
执行与按键相应的功能模块。 ;①查询扫描方式:
采取程序控制方式,一旦进入键扫描状态,就反复扫描键盘,等待键盘上输入命令或数据。
②定时扫描方式:
利用单片机内部定时器产生定时中断(例如20ms),CPU在中断服务程序中对键盘进行扫描,并在有键按下时识别出该键并执行相应键功能程序。
③外部中断方式:在中断方式下,仅在键盘有键按下时,产生外部中断请求,进入中断服务程序,再执行键盘扫描和按键处理程序。;意义:为了保证程序对按键进行有序处理。
独立式按键:数目相对较少,一般是依次连续编码。例题
矩阵式键盘:按键的位置由行号和列号唯一确定。常有两种:
⑴对行号和列号分别进行二进制编码,然后将两值合成一个字节,高4位是行号,低4位是列号;
⑵依次排列键号,对按键进行连续编码。
例题;重复键:出现同时按下两个以上键的情况
处理方法是:
⑴多键均视为有效,按扫描顺序,将按键依次存入缓冲区中等待处理。
⑵ 继续对按键进行扫描,只判定最先(或最后)释放的按键为有效,其它按键则无效。
连击:指一次较长时间的按键产生多次击键的效果。等待按键释放的处理,目的就是为了消除连击,对一次按键只执行一次键功能,避免多次重复执行。;查询方式典型电路 ;中断方式典型电路 ;例1 独立式按键接口电路设计 ;独立式按键软件设计
1.查询方法检测按键状态 2.延时消除抖动 ;独立式按键接口电路设计 ;矩阵式键盘中的行、列线为多键共用,各按键状态的变化都会影响该键所在行和列的电平。
必须将行、列线的电平信号配合起来并作适当的处理,才能确定闭合键的位置。
按键的识别方法 :扫描法 、线反转法
矩阵键盘接口电路设计及编程 ;扫描法:分两步来完成:
第一步,判断键盘有无键被按下。
具体方法:将所有列线均置为低电平,检查各行线电平是否有变化,如果有变化,说明有键被按下。
第二步,确定按键位置。
具体方法:CPU把各列依次置为低电平,其余的列置为高电平,检查各行线电平的变化,如果某行线电平变为低电平,则可确定该列与该行交叉点处的按键被按下。;方法1 ⑴行线编程为输入线
⑵列线编程为输出线
⑶列线输出低电平
⑷则行线中电平由高到低所在行为按键所在行
方法2 ⑴行线编程为输出线
⑵列线编程为输入线,
⑶行线输出为低电平,
⑷则列线中电平由高到低所在列为按键所在列
特点:不需要对键盘逐列检测,简单实用。;按键的识别方法—线反转法;矩阵式键盘接口—硬件设计 ;矩阵式键盘接口—软件设计 ;矩阵式键盘接口—扫描程序框图 ;已知条件:8255口地址 为0700H~0703H
A口0700H,C口0703H
8255方式0,A口方式0输入,
C口低4位方式0输出
方式命令控制字为 ;六.LED显示器接口设计 ;一、共阴极7段显示器字型编码 ;二、静态显示方式
;特点:
1.编程比较简单
2.电流始终流过每个点亮的字段,亮度较高
3.占用的输出口线较多
;方法:
1.将所有位的段选线相应并联,由一个8位I/O口控制,从而形成段选线的多路复用
2.各位的公共端分别由
文档评论(0)