LED显示、键盘操作及程序PPT文档格式.ppt
- 文档编号:15665281
- 上传时间:2022-11-11
- 格式:PPT
- 页数:41
- 大小:1.11MB
LED显示、键盘操作及程序PPT文档格式.ppt
《LED显示、键盘操作及程序PPT文档格式.ppt》由会员分享,可在线阅读,更多相关《LED显示、键盘操作及程序PPT文档格式.ppt(41页珍藏版)》请在冰豆网上搜索。
j+);
voidmain(void)/主程序主程序while
(1)/非非0为真,此为无限循环为真,此为无限循环LED1=0;
LED2=1;
LED3=1;
delayms(1000);
LED1=1;
LED2=0;
LED3=0;
电阻电阻R,其计算公式如下:
,其计算公式如下:
为电源电压,为电源电压,取取5V5V;
为发光二极管压降,取为发光二极管压降,取1.2V1.2V-1.8V1.8V;
为驱动器压降为驱动器压降,取取0.3V-0.5V,0.3V-0.5V,本例未使用本例未使用驱动器驱动器;
为发光二极管工作电流为发光二极管工作电流,取取8mA-20mA8mA-20mA。
发光二极管工作电流,其值越大,二极管越亮。
为了提高亮度,可减少限流电阻。
也可以选用驱为了提高亮度,可减少限流电阻。
也可以选用驱动器件以提供更大的电流,常用的驱动器件有动器件以提供更大的电流,常用的驱动器件有动器件以提供更大的电流,常用的驱动器件有动器件以提供更大的电流,常用的驱动器件有74LS0674LS0674LS0674LS06、74LS0774LS0774LS0774LS07、小功率三极管等。
、小功率三极管等。
5.2.2LED显示显示(Light-EmittingDiode)共阳极共阳极共阴极共阴极外形图外形图8段段LED字型码(段码)字型码(段码)“1”的段码(共阳极):
的段码(共阳极):
“F9H”dpgfedcbaP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.011111001“5”的段码(共阴极):
的段码(共阴极):
“6DH”dpgfedcbaP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.001101101共阳极段码:
共阳极段码:
0123456789Ab“黑黑”C0H,F9H,A4H,B0H,99H,92H,82H,F8H,80H,90H,88H,83H,FFH共阴极段码:
共阴极段码:
3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,00H静态静态LEDLED显示显示显示显示0000,每秒钟加,每秒钟加11,至,至9999,如此循环不止。
,如此循环不止。
P1P1、P3P3各接一个数码管:
各接一个数码管:
#includeucharcodedispcode=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;
voidmain(void)/主程序主程序ucharnum=0;
while
(1)P1=dispcodenum/10;
P3=dispcodenum%10;
num+;
if(num=100)num=0;
常用简化缩写来定义数据类型:
#defineucharunsignedchar#defineuintunsignedint图图5.9两位两位LED数码管动态显示数码管动态显示动态动态LEDLED显示显示例:
显示例:
显示“86”86”#includesbitLED1=P27;
/十位十位sbitLED0=P26;
/个位个位ucharcodedispcode=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;
voidmain(void)/主程序主程序ucharnum=86;
LED11;
LED0=0;
delayms(5);
P1=dispcodenum%10;
LED10;
LED0=1;
33独立式键盘独立式键盘键盘处理程序任务键盘处理程序任务:
*检查键盘是否有键被按下;
检查键盘是否有键被按下;
*确定被按键的键号确定被按键的键号,获取键号。
获取键号。
*硬件电路消除抖动或软件消除抖动。
硬件电路消除抖动或软件消除抖动。
按键抖动按键抖动10ms10ms“1”“0”释放抖动释放抖动1010msms+5v稳定闭合稳定闭合1.1.独立式键盘电路独立式键盘电路延时等待延时等待10ms仍有按键信号?
仍有按键信号?
Y有按键信号?
有按键信号?
NYN键盘处理键盘处理89c51P1.0P1.1P1.2/*-key.h头文件头文件功能:
三独立键处理函数功能:
三独立键处理函数-*/#ifndef_KEY_H_#define_KEY_H_#include#defineucharunsignedchar#defineUP0x01/定义键号定义键号#defineDOWN0x02#defineENTER0x03sbitUP_key=P10;
/键引脚,改正键引脚,改正sbitDOWN_key=P11;
sbitENTER_key=P12;
/*-功能:
毫秒延时函数功能:
毫秒延时函数参数:
当晶振为参数:
当晶振为11.0592MHz时,时,x为为ms数,数,误差为误差为16us;
x1000为为1秒秒-*/voiddelayms(unsignedintx)ucharj;
while(x-)for(j=0;
功能:
获取键号获取键号返回:
返回:
key=键号键号1-3;
key=0无键按下。
无键按下。
-*/ucharKeyscanNUM(void)ucharkey=0;
/key=0无键按下无键按下UP_key=1;
DOWN_key=1;
ENTER_key=1;
if(UP_key=0)delayms(10);
if(UP_key=0)key=UP;
elsekey=0;
if(DOWN_key=0)delayms(10);
if(DOWN_key=0)key=DOWN;
if(ENTER_key=0)delayms(10);
if(ENTER_key=0)key=ENTER;
returnkey;
#endif#includekey.h“sbitLED_RED=P32;
/补充补充sbitLED_YELLOW=P33;
sbitLED_GREEN=P34;
/键处理子函数键处理子函数/功能:
按功能:
按UP键红灯亮,按键红灯亮,按ENTER键黄灯亮,键黄灯亮,/按按DOWN键绿灯亮,键绿灯亮,voidKeyProc(ucharkey)switch(key)caseUP:
LED_RED=0;
LED_YELLOW=1;
LED_GREEN=1;
break;
caseDOWN:
LED_RED=1;
LED_YELLOW=0;
caseENTER:
LED_GREEN=0;
独立键处理演示程序独立键处理演示程序/*主程序主程序voidmain(void)ucharkey;
while
(1)key=KeyscanNUM();
if(key=UP|key=DOWN|key=ENTER)KeyProc(key);
key=0;
44行列式键盘模块行列式键盘模块独立式键盘只适合按键少的场合。
独立式键盘只适合按键少的场合。
按键较多时,常采用行列式键盘电路。
行列式键盘的程序复杂,需采用键盘扫描技术。
常用的键盘扫描方式有:
扫描法、扫描法、反转法、反转法、状态矩阵法等。
状态矩阵法等。
本节只介绍(线)反转法本节只介绍(线)反转法Line-Reverse原理如图原理如图5.125.12。
反转法原理图反转法原理图反转法接线图反转法接线图先从先从P1口的高口的高4位输出低电平(列),位输出低电平(列),低低4位输出高电平(行);
位输出高电平(行);
即即P1=0x0f0;
从从P1口读取键盘状态:
口读取键盘状态:
低低4位中只要有一位出现位中只要有一位出现“0”,说明此行中有键按下。
,说明此行中有键按下。
各行有键按下的数值依次为各行有键按下的数值依次为0EH000011100DH000011010BH0000101107H00000111步骤步骤1:
再从再从P1口的低口的低4位输出低电平(行),位输出低电平(行),高高4位输出高电平(列);
位输出高电平(列);
即即P1=0xf;
高高4位中只要有一位出现位中只要有一位出现“0”,说明此行中有键按下。
各列有键按下的数值依次为各列有键按下的数值依次为E0H11100000D0H11010000B0H1011000070H01110000将两次读取的数值组合,得到将两次读取的数值组合,得到“键值的特征码键值的特征码”。
步骤步骤2:
步骤步骤3:
/*-4x4KEY.h头文件头文件功能:
对功能:
对4x4KEY.c函数的申明函数的申明-*/#ifndef_4x4KEY_H_#define_4x4KEY_H_#include#defineucharunsignedchar#defineKey_PortP1/定义键盘接口定义键盘接口/*-检测按键函数检测按键函数功能:
消抖后判断是否真正有键按下功能:
消抖后判断是否真正有键按下返回值:
返回值:
1有按键;
有按键;
0无按键无按键-*/ucharKey_Down(void);
/*-获取键键号扫描函数获取键键号扫描函数返回键号(返回键号(0x000x0f);
无按键返回无按键返回0xff;
-*/ucharKey_Code(void);
#endif/*-函数功能:
函数功能:
4x4KEY的驱动函数的驱动函数-*/#include4x4key.hvoiddelayms(uintx)/省略省略./判断是否有键按下函数,为判断是否有键按下函数,为Key_Down服务的函数服务
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LED 显示 键盘 操作 程序
![提示](https://static.bdocx.com/images/bang_tan.gif)