- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
项目六按键识别的设计
TMOD设置为0x06,表示T0用作计数器,工作于方式2,由于计数值设为256-1=255,当P3.4有键按下时,负跳变会使计数器初值255加1,计数器立即溢出而触发计数中断,计数中断函数将计数变量COUNT累加。 当将计数初值设为256-2=254,则每按两次才会触发一次计数中断 二、源程序编写说明: 任务5 用计数器中断实现100以内的按键计数 #includereg52.h #define uchar unsigned char #define uint unsigned int Uchar code DSY_code[ ]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f}; Uchar count=0; void main( ) { P0=0x00; P2=0X00; TMOD=0X06; TH0=TL0=256-1; 二、源程序编写 任务5 用计数器中断实现100以内的按键计数 二、源程序编写 ET0=1; EX0=1; EA=1; IP=0X22; IT0=1; TR0=1; While(1) { P0=dsy_code[count/10]; P2=dsy_code[count%10]; } } 任务5 用计数器中断实现100以内的按键计数 //T0中断 void clear_counter() interrupt 0 { count= 0; } //T0计数器中断函数 Void key_counter() interyupr 1 { Count=(count+1)%100;//因为只有两位数码管,计数控制在100以内 } 二、源程序编写 任务5 用计数器中断实现100以内的按键计数 * 应用电子专业课程开发实例 任务2 多路按键状态指示的设计 1.提出任务 任务2 多路按键状态指示的设计 ◇ 知识链接 一、矩阵式键盘 1.结构和工作原理 当输入部分有多个按键时,若仍然采用独立键盘,必然会占用大量的I/O口,采用矩阵键盘是一种比较节省资源的方法。矩阵式键盘又称行列式键盘,往往用于按键数量较多的场合。矩阵式键盘的按键设置在行与列的交点上。 任务2 多路按键状态指示的设计 一般矩阵键盘的连接示意图 任务2 多路按键状态指示的设计 2.按键的识别 确定键盘上哪一个键被按下可以采用逐行扫描或逐列扫描的方法,称为行(列)扫描法。 (1)先将全部列线置为低电平,然后通过行线接口读取行线电平,判断键盘中是否有按键被按下。 (2)判断闭合键的具体位置。在确认键盘中有按键被按下后,依次将列线置为低电平,再逐行检测各行的电平状态。若某行为低电平,则该行与置为低电平的列线相交处的按键即为闭合按键。 (3)综合上述两步的结果,即可确定出闭合键所在的行和列,从而识别出所按下的键。 任务2 多路按键状态指示的设计 3.矩阵式键盘的软件设计 矩阵式键盘的扫描常用编程扫描方式、定时扫描方式或中断扫描方式,无论采用哪种方式,都要编制相应的键盘扫描程序。在键盘扫描程序中一般要完成以下几个功能: (1)判断键盘上有无按键按下; (2)去键的机械抖动影响; (3)求所按键的键号; (4)转向键处理程序。 任务2 多路按键状态指示的设计 在编程扫描方式中,只有当单片机空闲时,才执行键盘扫描任务。一般是把键盘扫描程序编成子程序,在主程序循环执行时调用。在主程序执行任务太多或执行时间太长时,按键的反应速度会变慢。 在定时扫描方式中单片机可以定时对键盘进行扫描,方法是利用单片机内部定时器,每隔一定的时间就产生定时中断,CPU响应中断后对键盘进行扫描,并在有按键按下时进行处理。 在中断扫描方式中,当键盘上有按键被按下时产生中断申请,单片机响应中断后,在中断服务程序中完成键扫描、识别键号并进行键功能处理。 以上几种键盘扫描方式只是转入键盘扫描程序的方式不同,而键盘扫描程序的设计方法是类似的。 任务2 多路按键状态指示的设计 2.任务分析 (1)硬件电路设计 本设计采用AT89S51单片机最小系统,P3口外接矩阵式键盘接口电路,P1口外接共阴型七段数码管,如图5.2.1所示。电路中共有16个按键,按4×4的矩阵式排列,键号依次为0~F。单片机的P3.0~P3.3为输出口,连接4条列线;P3.4~P3.7为输入口,连接4条行线。 任务2 多路按键状态指示的设计 键盘键值显示电路图 任务2 多路按键状态指示的设计 (2)软件设计思路 矩阵式按键的软件设计与独立式按键不同的只是按键的识别方法不同。在矩阵式按键的扫描程序中,要对按键逐行逐列地扫描,得到按下键的行列信息,然后还要转换成键号,以便据此转到相应的键处理程序。 按键扫描子函数中,先对4条行线送
您可能关注的文档
最近下载
- 《文献检索与利用》教案. 第3章 网络文献信息检索.docx
- 螺旋藻的营养价值与应用.pptx VIP
- 中国古代文化常识.ppt VIP
- 非甾体类抗炎药物临床应用指南.pptx VIP
- “红旗杯”全国机械企业班组长管理技能竞赛题库附答案(新版) .docx VIP
- 内蒙古建筑图集 16MG02、16MG03、16MG04、16MG05 砌体结构构造、地沟构件、钢筋混凝土过梁、砌体填充墙结构构造 DBJT 03-21-2017.docx VIP
- 客户画像课件.pptx
- 普通高中体育与健康新课程标准试题与答案(2025年版2025年修订).pdf VIP
- 急诊科工作管理制度汇编.docx
- 第一课 时代精神的精华(精品课件)-【中职专用】高二思想政治《哲学与人生》同步精品课堂(高教版2023·基础模块).pptx VIP
文档评论(0)