📄 dependencd key.c
字号:
#include<reg52.h>
#define duanc unsigned char
sbit key=P3^4;//独立按键的接口
sbit dula=P2^6;//段锁存器
sbit wela=P2^7;//位锁存器
unsigned char num;
duanc code tabled[]={
0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,
0x77,0x7c,0x39,0x5e,0x79,
0x71};//数码管显示码,加蓝色的code可以让整个码表放在ROM里不占用内存即RAM
void delay(unsigned char);//延时函数
void display(unsigned char);//显示函数
void main()
{
while(1)//大循环不停检测按键
{
P0=0xc0;
wela=1;
wela=0;//选择要亮的数码管,都亮
if(key==0) //是否按键判断
{
delay(45);//去抖处理,一般都延时10MS
if(key==0)//如果确有按键按下
{
if(num==6)
num=0;
else
num++;//每按一次数增长一,到6后又置零
while(!key);//判断按键是否松开,正常时松开键时数才发生变化
}
}
display(num);//显示函数
}
}
void delay(unsigned char x)
{
unsigned char a,b;
for(a=x;a>0;a--)
for(b=100;b>0;b--);
}
void display(unsigned char num1)
{
P0=tabled[num1];
dula=1;
dula=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -