C51单片机05(键盘).ppt
《C51单片机05(键盘).ppt》由会员分享,可在线阅读,更多相关《C51单片机05(键盘).ppt(23页珍藏版)》请在第壹文秘上搜索。
1、第第5讲讲 单片机键盘单片机键盘独立按键独立按键独立按键触发的中断独立按键触发的中断#includevoid main()TCON=0 x00;/设置外部中断为电平触发方式设置外部中断为电平触发方式EA=1;/中断总控开放中断总控开放EX0=1;/外部中断外部中断INT0开放开放EX1=1;/外部中断外部中断INT1开放开放P0=0 x00;/数码管不显示任何内容数码管不显示任何内容while(1);/等待中断发生等待中断发生void keypress0() interrupt 0 /外部中断外部中断INT0服务程序服务程序P0=0 x3f;/数码管数码管0显示数字显示数字0P2=0 x00;
2、void keypress1() interrupt 2 /外部中断外部中断INT1服务程序服务程序P0=0 x06;/数码管数码管1显示数字显示数字1P2=0 x01;练习练习 用查询方式检测独立按键用查询方式检测独立按键S19是否按下,若是否按下,若第一次按下,第一次按下,LED0发光;第二次按下,发光;第二次按下,LED0熄灭,循环往复。熄灭,循环往复。程序代码程序代码#include#define uchar unsigned char#define uint unsigned intsbit KEY1 = P32;/独立按键独立按键S19连接的端口连接的端口sbit LED0 = P
3、00;/独立发光二极管连接端口独立发光二极管连接端口void Delay(uint milisec)/延时延时10msuint i,j;for(i=0; imilisec; i+)for(j=0; j1827; j+);程序代码程序代码void KEY()if(KEY1=0)/如果检测到有键按下如果检测到有键按下Delay(2); /20毫秒软件防抖毫秒软件防抖if(KEY1=0)/再次确认是否有键按下再次确认是否有键按下 LED0 = LED0;/LED显示取反显示取反Delay(50);/延时延时0.5秒再进行下次按键的检测秒再进行下次按键的检测void Main(void)while(1
4、) KEY();/查询方式持续检测是否有键按下查询方式持续检测是否有键按下练习练习 用查询方式检测独立按键用查询方式检测独立按键S19按下的次数,按下的次数,并在数码管并在数码管LED7上显示,最大计数值为上显示,最大计数值为9,超过超过9则从则从0开始重新计数。开始重新计数。#include#define uchar unsigned char#define uint unsigned intuchar code table16 = 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0
5、x5e,0 x79,0 x71;sbit KEY1 = P32;/独立按键独立按键S19连接的端口连接的端口uint k=0;void Delay(uint milisec)/延时延时10msuint i,j;for(i=0; imilisec; i+)for(j=0; j9) k=0; P0=tablek;/获取获取LED段位码段位码 Delay(50);/延时延时500ms再进行下次按键的检测再进行下次按键的检测练习练习 按下独立键按下独立键S19,使独立发光二极管,使独立发光二极管LED8发光发光1秒,然后自行熄灭(利用定时器实现秒,然后自行熄灭(利用定时器实现准确定时)准确定时)练习练
6、习 连续多次按下独立键连续多次按下独立键S19,使独立发光二极,使独立发光二极管管LED0LED8依次轮流发光,到头以后能依次轮流发光,到头以后能自行返回开始,循环执行自行返回开始,循环执行4 * 4 键盘阵列键盘阵列 若无键按下,读回的低若无键按下,读回的低4位为全位为全“1”0111练习练习 用查询方式扫描用查询方式扫描4 * 4键盘阵列,在最右侧键盘阵列,在最右侧数码管数码管LED(LED7)上显示用户按键的位置上显示用户按键的位置(0F)分析是否有键按下分析是否有键按下 先向先向P0口输出口输出0 xf0(高四位列选为全(高四位列选为全1 ,低四位行选为全低四位行选为全0),然后读回)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C51 单片机 05 键盘