- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 - 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
 - 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
 - 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
 - 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
                        查看更多
                        
                    
                参考程序  #includereg51.h unsigned char duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,                                      0x77,0x7c,0x39,0x5e,0x79,0x71}; unsigned char key_val[]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,                                        0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77}; unsigned char key_scan[]={0xfe,0xfd,0xfb,0xf7};  void delay(unsigned int z) {        unsigned int x,y;        for(x=z;x0;x--)            for(y=125;y0;y--); }  void main() {         unsigned char i,j;         P2=0;         while(1)        { 	P3=0xf0; 	if(P3!=0xf0) 	{                  delay(10);              if(P3!=0xf0)			 			for(i=0;i4;i++) 	{				       P3=key_scan[i];		       for(j=0;j16;j++		        if(key_val[j]==P3) 		   P2=duan[j];        }     }   }	 } 实例 运行效果 * * 中原工学院信息商务学院 中原工学院信息商务学院 键盘工作原理 1. 按键输入的特点       键盘实质上是一组按键开关的组合。通常使用的是触点式的机械弹性开关。利用机械触点的通断,实现按下时开关导通,释放时开关断开的功能。       按键触点的一端和单片机的I/O端口引脚连接,另一端与电压信号相连,触点的通断即可引起端口引脚上的电压变化,单片机通过程序读入I/O端口引脚电平信号便可判断按键的状态。如下图所示。  当按键未按下压时,Px.n端口为高电平;按压按键后为低电平。 按键在闭合和断开时,触点会存在抖动现象:      图为键闭合时列线电压波形。键闭合和断开过程中存在抖动期(呈现一串负脉冲),抖动时间长短与开关的机械特性有关,一般为5~10?ms之间;稳定闭合期由操作员的按键动作所确定,一般为数百毫秒到几秒。为了保证CPU对键的闭合做一次处理,必须去除抖动,在键的稳定闭合或断开时,读键的状态。 软件消抖方法:当判别到键盘上有键闭合后,延时一段时间再                  判别键盘的状态,若仍有键闭合,则认为键盘               上有一个键处于稳定的闭合状态,否则认为键                  抖动。  键盘有两种结构:独立式按键和矩阵式按键。   1.独立式按键           独立式键盘中每个按键都单独连接到单片机的一个I/O端口引脚上。 特点是电路简单,但占用I/O口线较多。 例:按下按键,对应的LED灯亮 #includereg51.h void delay(unsigned int z) { 	unsigned int x,y; 	for(x=z;x0;x--) 	   for(y=125;y0;y--); } void main() {  unsigned char  key;       P2=0x00;       P0=0x01;       while(1)        {   key=P0;             if(key!=0x01)             {               delay(10);               if(key!=0x01)                   P2=~key;            }         } } 实例  独立按键识别 【要求】采用独立按键方式实现下述功能:开机时LED全熄,然后根据按键动作使相应灯亮,并将亮灯保持到按压其它键时为止。 做输入,先写1 ① 按键的闭合电平为0, 但LED的驱动电平为1,故不能直接将P0口的状态送到P2口,而应使其先取反再送出; ② 使按键按下LED点亮,松开时保持不变。 【分析】 #includereg51.h void delay(unsigned int z) { 	unsigned int x,y; 	
                您可能关注的文档
最近下载
- Parker Lord公司《电池系统组件的绝缘防护技术评估白皮书》.pptx VIP
 - 小型白菜类蔬菜栽培技术.ppt VIP
 - 白菜类蔬菜栽培技术 (3).ppt VIP
 - 建设工程档案归档清单.xlsx VIP
 - 2024年河北省职业院校技能大赛中职组“艺术设计”赛项样题-第四套 .docx VIP
 - 2025年浙江省初中学业水平信息科技考试试卷(含答案详解).docx
 - 退工原因变更申请表 .pdf VIP
 - DB15T+3686.3-2024物业管理服务规程 第3部分:秩序维护.pdf VIP
 - 职业院校技能大赛艺术设计中职样题.docx VIP
 - 大学生简历毕业生简历求职简历 (27).docx VIP
 
原创力文档
                        

文档评论(0)