久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機LED燈出現不滅或一直閃爍怎么解決?
[打印本頁]
作者:
strong_g
時間:
2019-3-4 14:18
標題:
單片機LED燈出現不滅或一直閃爍怎么解決?
1.jpg
(85.85 KB, 下載次數: 37)
下載附件
2019-3-4 14:17 上傳
#include<reg52.h> //52系列單片機頭文件
#define uchar unsigned char //宏定義
#define uint unsigned int
sbit led1=P2^0;sbit led2=P2^1;
sbit led3=P2^2;sbit led4=P2^3;
sbit led5=P2^4;sbit led6=P2^5;
sbit led7=P2^6;sbit led8=P2^7;
sbit led9=P3^0;
sbit key1=P3^1;sbit key2=P3^2;
sbit key3=P3^3;sbit key4=P3^4;
/*************************延時函數*****************************/
void delay1ms(uint y)
{
uint j;
while(y--)for(j=0;j<120;j++);
}
/*************************子函數******************************/
uchar flag;
uchar flag2;
void keyplus(void)
{
if(key1==0) //確認按鍵是否被按下
{
delay1ms(5); //延時消抖動
if(key1==0) //消抖后在判斷按鍵是否按下
{
while(!key1); //等待按鍵釋放
flag++;
if(flag==10)flag=1;
}
}
switch(flag)
{
case 1:
led1=0;
break;
case 2:
led2=0;
break;
case 3:
led3=0;
break;
case 4:
led4=0;
break;
case 5:
led5=0;
break;
case 6:
led6=0;
break;
case 7:
led7=0;
break;
case 8:
led8=0;
break;
case 9:
led9=0;
break;
}
}
void keyreduce(void)
{
if(key2==0) //確認按鍵是否被按下
{
delay1ms(5); //延時消抖動
if(key2==0) //消抖后在判斷按鍵是否按下
{
while(!key2); //等待按鍵釋放
flag2++;
if(flag2==10)flag2=1;
}
}
switch(flag2)
{
case 1:
led9=1;
break;
case 2:
led8=1;
break;
case 3:
led7=1;
break;
case 4:
led6=1;
break;
case 5:
led5=1;
break;
case 6:
led4=1;
break;
case 7:
led3=1;
break;
case 8:
led2=1;
break;
case 9:
led1=1;
break;
}
}
/*************************主函數******************************/
void main()
{
while(1)
{
keyjia();
keyjian();
}
}
復制代碼
作者:
wulin
時間:
2019-3-4 18:05
這樣寫就沒有問題了
#include<reg52.h> //52系列單片機頭文件
#define uchar unsigned char //宏定義
#define uint unsigned int
sbit led1=P2^0;
sbit led2=P2^1;
sbit led3=P2^2;
sbit led4=P2^3;
sbit led5=P2^4;
sbit led6=P2^5;
sbit led7=P2^6;
sbit led8=P2^7;
sbit led9=P3^0;
sbit key1=P3^1;
sbit key2=P3^2;
sbit key3=P3^3;
sbit key4=P3^4;
uchar flag;
//uchar flag2;
/*************************延時函數*****************************/
void delay1ms(uint y)
{
uint j;
while(y--)
for(j=0;j<120;j++);
}
/*************************子函數******************************/
void keyscan()
{
if(key1==0) //確認按鍵是否被按下
{
delay1ms(5); //延時消抖動
if(key1==0) //消抖后在判斷按鍵是否按下
{
if(flag<9)
flag++;
switch(flag)
{
case 1:led1=0;break;
case 2:led2=0;break;
case 3:led3=0;break;
case 4:led4=0;break;
case 5:led5=0;break;
case 6:led6=0;break;
case 7:led7=0;break;
case 8:led8=0;break;
case 9:led9=0;break;
}
while(!key1); //等待按鍵釋放
}
}
if(key2==0) //確認按鍵是否被按下
{
delay1ms(5); //延時消抖動
if(key2==0) //消抖后在判斷按鍵是否按下
{
if(flag>0)
flag--;
switch(flag)
{
case 0:led1=1;break;
case 1:led2=1;break;
case 2:led3=1;break;
case 3:led4=1;break;
case 4:led5=1;break;
case 5:led6=1;break;
case 6:led7=1;break;
case 7:led8=1;break;
case 8:led9=1;break;
}
while(!key2); //等待按鍵釋放
}
}
}
/*************************主函數******************************/
void main()
{
while(1)
{
keyscan();
}
}
復制代碼
作者:
lfc315
時間:
2019-3-4 18:48
每個分支里,亮燈1秒后滅燈
作者:
狂飆的小葉嗎
時間:
2019-3-4 19:59
是不是 延時太短了
作者:
kakaokok
時間:
2019-3-5 09:28
寫的很詳細,感謝分享!
作者:
strong_g
時間:
2019-3-5 16:45
wulin 發表于 2019-3-4 18:05
這樣寫就沒有問題了
C:\Users\Administrator\Desktop\12.jpg想加多個按鍵依次點亮LED循環怎么寫
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产91在线播放
|
久久这里只有精品首页
|
www.久久久
|
九九综合
|
精品欧美一区二区三区久久久
|
欧美一区视频
|
欧区一欧区二欧区三免费
|
免费看大片bbbb欧美
|
av在线黄
|
www.伊人.com
|
人人草人人干
|
欧美成人精品二区三区99精品
|
精品久久久久一区
|
成人av资源在线
|
自拍视频一区二区三区
|
久久精品一区
|
91精品国产麻豆
|
www.一级片
|
伊人免费在线观看
|
91精品国产综合久久久久久丝袜
|
国产高清一区二区三区
|
日韩一区二区三区在线观看
|
国产精品国产精品国产专区不卡
|
国产农村妇女毛片精品久久麻豆
|
久久ww
|
久久91精品久久久久久9鸭
|
不卡一区二区三区四区
|
羞羞视频在线观看
|
天天看片天天干
|
国产精品久久久久久久久久
|
在线免费视频一区
|
亚洲精品aⅴ
|
国产偷自视频区视频
|
第四色狠狠
|
亚洲国产成人av好男人在线观看
|
伊人精品
|
欧美一区二不卡视频
|
久久精品久久久久久
|
天天干视频
|
99re99
|
免费在线成人
|