欢迎来到天天文库
浏览记录
ID:51433449
大小:866.50 KB
页数:19页
时间:2020-03-22
《简易计算器任务一矩阵控制数码显示.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、导入新课练一练:456*561=?8579*1914=??45892*175190=???简易计算器简易计算器之矩阵键盘4*4矩阵键盘特点:电路连接复杂,但提高了I/O口利用率,软件编程较复杂。适用于需使用大量按键的场合。矩阵键盘:行线和列线组成,按键位于行、列线的交叉点上4*4矩阵键盘的结构单片机对矩阵式键盘接口处理的一般过程如右图所示。键扫描消抖求键码等待释放键扫描消除抖动有键按下?键扫描确有键按下?求键值按键处理键释放?YYYNN等待键释放N开始返回按键处理键盘处理流程框图矩阵键盘控制流程按键扫描按键扫描就是要判断有无键按下,当扫描到有键按下时再进行下一步处理,否则退出键盘处理程序。独
2、立式键盘扫描只需读取IO口状态,而矩阵式键盘按键识别通常有两种实现方法:逐行扫描法和线反转法。逐行扫描法逐行输出扫描信号,逐个按键进行判断。例:给第一行输出一个低电平,其他I/O口均为输出高电平,从高电平变为低电平,则数列可确定,若无电平变化,则改行无按键按下,继续扫描下一行89C51P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5V01111111101111101101111111101111设第2行第4列键按下行线输出列线输入01111111101111101101111111101111逐行扫描法扫描第0行:扫描码11111110分为4种情况:K0按下:读键值得1
3、1101110,即eeK1按下:读键值得11011110,即deK2按下:读键值得10111110,即beK3按下:读键值得01111110,即7e逐行扫描法扫描第1行:扫描码11111101分为4种情况:K4按下:读键值得11101101,即edK5按下:读键值得11011101,即ddK6按下:读键值得10111101,即bdK7按下:读键值得01111101,即7d逐行扫描法0123eedebe7e4567edddbd7d89ABebdbbb7bCDEFe7d7b777逐行扫描法由于按键按下时的机械动作,在按键被按下或松开的瞬间,其输出电压会产生波动,称为键的抖动。键按下前沿抖动后沿抖
4、动消抖为确保每按一次键单片机只进行一次处理,使键盘可靠地工作,必须消除按键抖动。消抖方法有硬件消抖和软件延时两种。图8.5键闭合及断开时的抖动按键扫描:确定有无键按下P1=0xfe;temp=P1;if(temp!=0xfe){delay1ms(15);temp=P1;if(temp!=0xfe){……}(1)将所有行线置0所有列线置1;P1=0xf0;(2)读取矩阵键盘接口线值;temp=P1;有键按下:temp不等于0xf0无键按下:temp=0xf0矩阵键盘程序分析消抖P1=0xfe;temp=P1;if(temp!=0xfe){delay(10);temp=P1;if(temp!=0
5、xfe){temp=P1;switch(temp){case0xee:num=0;break;case0xde:num=1;break;case0xbe:num=2;break;case0x7e:num=3;break;}}while(P1!=0xfe);……矩阵键盘程序分析教学任务:设计一个4×4矩阵键盘,其键值为0--F,按下按键,数码管显示相应键值,要求用行扫描法识别键盘,且键盘要有去抖动功能。ThankYou!
此文档下载收益归作者所有