用51单片机设计简单的一个程序,
答案:2 悬赏:10 手机版
解决时间 2021-04-06 17:34
- 提问者网友:鼻尖触碰
- 2021-04-05 20:29
用51单片机设计简单的一个程序,
最佳答案
- 五星知识达人网友:杯酒困英雄
- 2021-04-05 21:27
#include
code unsigned char led[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
#define uint unsigned int
#define uchar unsigned char
sbit K1=P3^2;
sbit K2=P3^3;
char i=0; // //全局变量
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void K1_scan()
{
bit bk; //局部变量,只在定义范围内有效
static bit bkh=1; // static 静态类型,退出定义范围后其值会存储下来
bk=K1;
if(bk==0&& bkh==1){
delay(10);
if(K1==0){
i++;
if(i==8)
i=0;
}
}
bkh=bk;
}
void K2_scan()
{
bit bk; //局部变量,只在定义范围内有效
static bit bkh=1; // static 静态类型,退出定义范围后其值会存储下来
bk=K2;
if(bk==0&& bkh==1){
delay(10);
if(K2==0)
if(i==0) i=7;
else i--;
}
bkh=bk;
}
void main()
{
while(1)
{
K1_scan();
K2_scan();
P1=~led[i];
}
}
code unsigned char led[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
#define uint unsigned int
#define uchar unsigned char
sbit K1=P3^2;
sbit K2=P3^3;
char i=0; // //全局变量
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void K1_scan()
{
bit bk; //局部变量,只在定义范围内有效
static bit bkh=1; // static 静态类型,退出定义范围后其值会存储下来
bk=K1;
if(bk==0&& bkh==1){
delay(10);
if(K1==0){
i++;
if(i==8)
i=0;
}
}
bkh=bk;
}
void K2_scan()
{
bit bk; //局部变量,只在定义范围内有效
static bit bkh=1; // static 静态类型,退出定义范围后其值会存储下来
bk=K2;
if(bk==0&& bkh==1){
delay(10);
if(K2==0)
if(i==0) i=7;
else i--;
}
bkh=bk;
}
void main()
{
while(1)
{
K1_scan();
K2_scan();
P1=~led[i];
}
}
全部回答
- 1楼网友:拜訪者
- 2021-04-05 22:19
点点点点点点
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯