- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
项目六 实时时钟
本项目是单片机的应用项目之一,Philips公司生产的具有总线接口的多功能时钟/日历芯片PCF8563项目中的各分任务的本着由简到繁的,逐步深入介绍单片机过程及的基础常识。初步了解、掌握使用方法编程方法。
6-1(a) 3×3 6-1(b) 4×4
图6-1 矩阵式键盘结构
(一)矩阵键盘工作原理
按键设置在行、列线的交点上,行、列线分别连接到按键的开关两端。行线通过上拉电阻接到+5V上。平时无按键动作时,行线处于高电平状态,而当有按键按下时,列线电平状态将由与此行线相连的列线电平决定。由于矩阵键盘中行、列线为多键共用,各按键均影响该键所在行和列的电平,所以必须将行、列线信号配合起来并作适当的处理,才能确定闭合键的位置。
(二)按键的认别方法
1.扫描法
当键被按下时,让所有列线处于低电平,按键所在行电平将被拉成低电平,根据此行电平的变化,便能判定此行有键被按下。为了判定是哪一列的键被按下,可让列线依次处于低电平,而其余列线处于高电平,按键所在的列电平将被拉成低电平,根据此列电平的变化,便能判定按键所在的列。
根据上面的分析,很容易得出矩阵键盘按键的识别方法,此方法分两步进行:
第一步:识别键盘是否有键闭合:让所有列线均置低电平,检查各行线电平是否有变化,如果有变化,则说明有键被按下,如果没有变化,则说明无键被按下(实际编程时应考虑按键抖动的影响,通常总是采用软件延时的方法进行消抖处理)。
第二步:识别具体闭合的按键(亦称之为扫描法):逐列置低电平,其余各列置高电平,检查各行线电平的变化,则可确定此行被按下按键的行和列。
2.线反转法
扫描法要逐行扫描查询,当被按下的键处于最后一列时,则要经过多次扫描才能最后获得此按键所处的行列值。而线反转法则显得很简练,无论被按键是处于第1列或是最后一列,均只须经过两步便能获得此按键所在的行列值,线反转法的原理如图6-2所示。
第一步:将行线编程为输入线,列线编程为输出线,并使输出线输出为全零电平,则行线中电平由高到低所在行为按键所在行。
第二步:同第一步完全相反,将行线编程为输出线,列线编程为输入线,并使输出线为全零电平,则列线中电平由高到低所在列为按键所在列。
综合一、二步的结果,可确定按键所在行和列,从而识别出所按的键。
假设3号键被按下,那么第一步即在P1.0~P1.3输出全0,读入P1.4~P1.7位,结果P1.7=0,而P1.4、P1.5和P1.6均为1,说明第一行有键被按下;第二步让P1.4~P1.7位输出全0,然后读入P1.0~P1.3位,结果P1.0=0,而P1.1、P1.2和P1.3均为1,说明第4列有键被按下。综合一、二步,即第1行第4列按键被按下,此按键即3号键。
图6-2 线反转法的原理图
(三)键盘的编码
对于矩阵式按键键盘,由于按键的数目较多,需要对按键进行编码。编码有多种方式,常用两种:
1.对于矩阵式键盘,按键的位置由行号和列号确定,分别对行号和列号进行二进制编码,然后将两值合成一个字节,高4位表示行号,低4位表示列号。如12H表示第1行第2列的按键。
2.采用依次排列键号的方式对按键进行编码。以4×4键盘为例,可以键号编码为:00H、01H、02H……0DH、0EH、0FH共16个。
无论以何种方式编码,均应以处理问题方便为原则。
(四)键盘的工作方式
键盘的工作方式有三种,即:编程扫描方式、定时扫描和中断扫描。
1.编程扫描方式
(1)键盘扫描
CPU对键盘的扫描采取程序控制方式,一旦进入键扫描状态,则反复地扫描键盘,等待用户从键盘上输入命令或数据。
例:图6-2为一个4×4矩阵键盘,通过P1口和单片机相联的电路原理图,键盘采用编程扫描方式工作,P1口高4位输出逐行扫描信号,P1口低4位输入列信号,均为低电平有效。
本方案中采用延时10ms子程序进行软件消抖;通过设置处理标示来区分闭合键是否已处理过;用计算方法得到键码,高4位代表行,低4位代表列。
键盘扫描子程序中完成以下几个功能:
①判定键盘上有无键按下:P1.0~P1.3输出低电平,读P1口高4位状态,若P1.4~P1.7全不1,则说明键盘无键按下;若不全为1,则说明键盘有键按下。
②消除按键抖动的影响:在判断有键按下后,用软件延时10ms作为消抖处理,确认按键是否确实闭合。
③确定按键位置:根据前面介绍的扫描法或线反转法,确定按键位置。
④键闭合一次仅进行一次按键处理:方法是等待按键释放之后,再进行按键功能的处理操作。
(2)编程扫描程序
键盘扫描开始时,当检测有按键闭合后,调用10ms延时子程序,作为软件消抖使用,延时后再检测有无按键闭合。当确认有按键闭合时,对键盘进行扫描,来确定哪个按键闭合,同时计算出键值。然后检测按键释放后,建立按键有
您可能关注的文档
最近下载
- 第三单元 物质构成的奥秘跨学科实践活动2制作模型并展示科学家探索物质组成与结构的历程》课件-人教版2024九年级化学上册.pptx VIP
- 2024年四川广安爱众股份有限公司人员招聘考试题库及答案解析.docx VIP
- 英格索兰空压机.ppt VIP
- NBT 47015 2011 压力容器焊接规程.pdf VIP
- 地铁车站大客流应急组织.pptx VIP
- 人教版六年级数学上册第三单元《分数除法》单元测试卷 (含答案).pdf VIP
- 2023年四川广安爱众股份有限公司招聘笔试题库及答案解析.docx VIP
- 2023四川广安爱众股份有限公司招聘见习人员2人笔试备考试题及答案解析.docx VIP
- 2023四川广安爱众股份有限公司对外招聘笔试备考题库及答案解析.docx VIP
- 能源管理体系钢铁企业认证要求.pptx VIP
文档评论(0)