⑴ 51單片機一鍵控制一個LED,每按一下按鍵LED閃爍一種頻率,共閃爍三種頻率.有好的答案加
#include<reg51.h>
unsigned char n = 0;
sbit key = P3^4;
sbit led = P1^0;
void delay()
{
unsigned int i, j;
for(i = 0; i < 100; i++) for(j = 0; j < 500; j++);
}
void readkey(void)
{
unsigned char i, j;
if(!key) {
for(i = 0; i < 10; i++)
for(j = 0; j < 120; j++); //延時消抖
if(!key) {
while(!key); //等待按鍵釋放
n++;
n %= 4; //n = 0~3
}
}
}
main()
{
while(1) {
switch(n) {
case 0: led = 1; readkey(); break; //熄滅
case 1: delay(); readkey(); //慢速閃爍
case 2: delay(); readkey(); //中速閃爍
case 3: delay(); readkey(); led = ~led; //快速閃爍
}
}
}
⑵ 單片機c51,9個燈同時閃爍
從第一個燈開始隨著時間變化,二進制數的遞減,所有的燈都會依次的點亮,當全部的燈都被點亮後再重新開始這個過程,一直循環下去。
紅綠藍四個LED燈循環閃爍,單片機課程試驗,連上板子可以直接顯示,非常基礎。單片機使用codewarrior編。
資源中是採用51單片機的GPIO引腳對多路LED燈進行控制的代碼,包含兩個工程,分別採用兩種不同的方法對多路LED燈進行控制。
⑶ 51單片機怎麼只控制一顆LED燈閃爍
1、新建項目,如圖所示。
注意事項:
很多公司都有51系列的兼容機型推出,今後很長的一段時間內將佔有大量市場。51單片機是基礎入門的一個單片機,還是應用最廣泛的一種。需要注意的是51系列的單片機一般不具備自編程能力。