導航:首頁 > 操作系統 > 單片機閃爍程序

單片機閃爍程序

發布時間:2022-02-09 18:00:13

『壹』 52單片機閃爍燈程序

你閃爍的話,程序是什麼樣子?這個單片機閃爍的程序的話。根據這個需求來進行開關可以了

『貳』 51單片機燈閃爍怎麼編程

51單片機閃爍燈的編程程序要與相對應的機器連接之後,固定編碼操作。

『叄』 如圖單片機閃爍燈的程序怎麼寫

main前加void
uint i,j;

『肆』 51單片機控制一個燈閃爍的程序怎麼做

不知道你那個按鍵是做什麼用的,要LED閃爍的話可以先點亮LED,然後延時一會兒,再熄滅LED,循環的話就是閃爍了,點亮或者熄滅LED就是通過P0口輸出高或低電平實現

『伍』 利用51單片機設計一個循環閃爍程序

#include<reg51.h>
#defineucharunsignedchar
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
main()
{
uchari,j;
j=0;
while(1)
{
for(i=0;i<10;i++)
{
P0=~(1<<j);
delay(100);
P0=0xff;
delay(100);
}
j++;
j%=8;
}
}

『陸』 單片機控制led的閃爍程序

你這個程序死循環了,我一點一點給你糾正:
1 你有個不好的習慣,希望你改正:
定義變數的時候,請明確的指明變數的類型:unsigned char i,或者unsigned int i
而不要是unsigned i,這是不好的習慣。
2 你的這個地方是個死循環:
for(j=7;j>=0;j--)
{
led=(temp>>=1);
yanshi(50);
}
因為你的j定義的是unsigned 類型,所以,j永遠都會是非負數,所以,你的for循環會一直進行,修改如下:

for(j=7;j>0;j--)
{
led=(temp>>=1);
yanshi(50);
}

3 看你的while(1)循環里:
while(1) {
if(kaiguan==0) yanshi(20);
if(kaiguan==0)
{
kaideng();
}
if(kaiguan!=1)
{led=0xff;}
}
你這樣寫,我問你 if(kaiguan==0)和if(kaiguan!=1)有什麼區別嗎?

『柒』 51單片機使燈閃爍,我寫的程序按一下開始閃爍,在按一下為什麼不能熄滅呢

void main()
{
L1=0;
if(K1==0) //1 按鍵按下後
{
Delay10ms(); //2 延時去抖動
if(K1==0) //3 確認按下
{
L1=0; //4 以下4句閃爍一次
Delay(1000);
L1=1;
Delay(1000);
}
while(1) //5 這里死循環,不能再執行上面的語句了。
{
while(!K1) //6 判斷按鍵是否按下,如果按下,則延時10ms,再判斷是否按下,一致循環,知道你松開手。
{
Delay10ms();
}
while(!K1); //7 按鍵按下話,一致死等,直到你松開手

{ //8 下面閃爍一次。
L1=0;
Delay(1000);
L1=1; // 9
Delay(1000);
}
}
}
}

你的程序來看,工作流程是這樣的,開機後,按下按鍵不放,只閃爍一次。如果你放開你的手,釋放按鍵,則LED一致閃爍。
你說再按一下為什麼不熄滅,因為 標示9句那裡置1了,你的硬體應該是L1置1亮吧?
因為L1=1,是你燈閃爍的最後一個狀態,而後又會從5再次執行,如果你按下了按鍵,程序停在了6那裡死循環,
則後面7,8都不會執行了。燈則保留了上一個循環最後的狀態,也就是9的狀態,所以就一致亮了。
你如果又松開按鍵,燈又會閃爍,你再按下按鍵,燈又一直亮了。如此循環。

你的程序的就是一個字概括,亂,你的思路很混亂,條理不清晰,建議先在紙上寫下流程,再來寫代碼。想清楚了再下手。
你會學的很快的。

你的main函數有個性,呵呵,沒有人會這么寫main函數的,去看看單片機C語言的書吧!

『捌』 單片機LED燈閃爍程序

char LED;
sbit key1down=P1^0 ; // 設開關key1連接此埠
sbit key2down=P1^1 ; // 設開關key2連接此埠
void main(){

P0=0xff; // 輸出低電平LED亮

LED=0xfe;
while(1){
P0=LED; delay();
if(key1){ LED <<= 1 ; } // 將LED左移一位;
if(key2){ LED >>= 1 ; LED |=0x80; } // 將LED右移一位;
if(key1down==0) { key1=1; key2=0;}
if(key2down==0) { key1=0; key2=1;}
}

『玖』 8個LED指示燈循環閃爍的程序(單片機)

1:設置一個變數i,它可以從0循環到3

2:檢測一個已取消緩沖的鍵。按「+1」

3:當I值為每個值時,執行相應的模式。

水量燈參考程序

#include

#include

#定義uchar無符號字元

Ucharj,溫度;

無效延遲(無符號整型ms)

Uchart;

(女士)

對於(t = 0;T < 123;T + +);

Voidmain()

P1=0XFF;

延遲(500);

Temp=0xfe;//奇怪,led連接在P2.3~P2.6

對於(j = 0;J < 4;J + +)

P1=temp;

延遲(500);

Temp=_crol_(Temp,1);

P1=0XFF;

(1);

(9)單片機閃爍程序擴展閱讀:

注意事項:

#include「reg52。這個文件為單片機定義了一些特殊的功能寄存器

Typedef無符號int在16以下;//以聲明的方式定義數據類型

無符號charu8;

//LED燈

Sbitleda=P0;

Sbitled1=P0^0;

Sbitled2=P0^1;

Sbitled3=P0^2;

Sbitled4=P0^3;

Sbitled5=P0^4;

Sbitled6=P0^5;

Sbitled7=P0^6;

Sbitled8=P0^7;

無效延遲(16歲以下)

,(我);

Voidmain()

而(1)

勒達=1;//所有的燈都亮著

//從左到右熄滅

Led1=0;

延遲(50000);//延遲時間約為450毫秒

Led2=0;

延遲(50000);//延遲時間約為450毫秒

Led3=0;

延遲(50000);//延遲時間約為450毫秒

Led4=0;

延遲(50000);//延遲時間約為450毫秒

Led5=0;

延遲(50000);//延遲時間約為450毫秒

Led6=0;

延遲(50000);//延遲時間約為450毫秒

Led7=0;

延遲(50000);//延遲時間約為450毫秒

Led8=0;

延遲(100000);//延遲大約900毫秒

//從右到左照明

Led8=1;

延遲(50000);//延遲時間約為450毫秒

Led7=1;

延遲(50000);//延遲時間約為450毫秒

Led6=1;

延遲(50000);//延遲時間約為450毫秒

Led5=1;

延遲(50000);//延遲時間約為450毫秒

Led4=1;

延遲(50000);//延遲時間約為450毫秒

Led3=1;

延遲(50000);//延遲時間約為450毫秒

Led2=1;

延遲(50000);//延遲時間約為450毫秒

Led1=1;

延遲(50000);//延遲時間約為450毫秒

勒達=1;//所有的燈都亮著

『拾』 單片機閃爍小燈程序怎麼寫

#include<reg52.h>
#defineuintunsignedint
sbitD0=P0^0;
main()
{
while(1)
{
inti,j;
D0=0;
for(i=0;i<100;i++)
for(j=0;j<670;j++);
D0=1;
for(i=0;i<100;i++)
for(j=0;j<670;j++);
}

}

上面是基於51系列單片機寫的,D0是小燈的IO 口,在While循環中控制高低電平(寫0或1)就能實現小燈閃爍。

閱讀全文

與單片機閃爍程序相關的資料

熱點內容
雲上伺服器貴州 瀏覽:643
qq三國怎麼使用雲伺服器 瀏覽:296
一鍵加密字體怎麼設置 瀏覽:143
majority演算法 瀏覽:820
如何開啟電腦的dlna伺服器 瀏覽:9
3提成怎麼演算法 瀏覽:970
php是不是解釋性語言 瀏覽:25
手機設置遠程定位伺服器地址 瀏覽:913
android模擬器裝apk 瀏覽:773
炒黃金app哪個好用 瀏覽:993
恐懼症app哪個最好用 瀏覽:288
億賽通加密軟體好用嗎 瀏覽:578
為什麼光遇排隊伺服器忙 瀏覽:826
哪個app能把手p瘦 瀏覽:253
java中的date類型 瀏覽:431
面向程序員的范疇論 瀏覽:57
如何查詢伺服器所有電腦名 瀏覽:902
shell命令jar 瀏覽:301
有什麼做手帳app 瀏覽:156
phpjquery源碼 瀏覽:886