用AT89C51微控制器的P2口控制Led的流水燈的C程式看不懂

時間 2021-09-10 12:09:58

1樓:緱淑蘭印醜

#include

void

delay1ms(unsigned

intcount)

/*延時函式,延遲時間為count×1ms)*/}

2樓:由佑平仇鸞

1000

0000右移ledindex位,延遲時間為count×1ms)*/j++),點亮一個led*/,把leddirection取反;*延時函式;regx52;ledindex);j<

/for(i=0;

}main()

{unsigned

char

ledindex

=0.h>*宣告位變數leddirection;>p2=

~(0x80>.5s*/<*當一次迴圈結束時,用來指示點亮的方向;count,下次迴圈時將以相反的順序點亮*/i++)

for(j=0,即led的點亮間隔為0;*ledindex+1對8取餘,保證ledindex在0~7之間*/120;

{if(leddirection)

/*延時500ms,初始值為00000000*/*當leddirection=1時,取反後送給p2埠;

void

delay1ms(unsigned

intcount)

/,初始值為1*/*宣告8位變數ledindex;

{unsigned

inti;

while(1)//

p2=~(0x01<

bitleddirection=1;

/if(ledindex==7)

/*一直迴圈執行大括號裡面的語句*/

delay1ms(500);

ledindex

=(ledindex+1)%8,j;

else

/,點亮一個led*/!leddirection;*當leddirection=0時,取反後送給p2埠;

leddirection

=;ledindex),0000

0001左移ledindex位;i<,用來指示8個led中哪個被點亮;

/#include

<

3樓:

看不懂別人編寫的c程式,最好的辦法是自己動手編寫。

at89c51微控制器開關控制流水燈電路圖,題如下面的圖 50

4樓:匿名使用者

最最簡單的方法就是3個io口接接那三個開關,用八個io口驅動八個燈,然後迴圈檢測三個開關的狀態並使用延時方式來驅動各個燈的亮滅

5樓:做而論道

先確定電路,以及程式語言。

想用at89c51微控制器控制32個led燈做個流水燈程式,要求是開關開啟後從第一盞燈亮到最後一盞且不熄滅 10

6樓:

visual studio2012包括vb c c#等開發語言用於電腦軟體開發,不能做微控制器程式。微控制器還是用keil好。

7樓:匿名使用者

51 還不用kiell,暈

要求用AT89C51微控制器的P1口點亮發光二極體分為兩組

真的是很簡單的,用點心學幾天就可以寫,看到沒人回,幫忙 12m include void timer0 init void main void timer0 isovf interrupt 1 程式如下 絕對沒有錯 led燈的一端接p1口的各各引腳,另一端接地。同時在p1口的每個管腳上加1k的上拉電...

89c51微控制器問題,使AT89C51微控制器復位有幾種方法 復位後的狀態如何

一定要採用與運算的話,我是這樣算的 unsigned char target 待測試數unsigned char tmp,i,j 變數tmp 0x01 j 0 for i 7 i 0 i tmp 1 tmp左移一位 接下來判斷j是偶數還是奇數就能知道target裡1的個數了。回hanxingfdx ...

用c語言怎麼在微控制器at89c51上編寫延時10秒的

1 十秒對於微控制器來說是很長很長的時間了,微控制器十秒的時間什麼事都不能做,只在跑這延時程式,那是什麼概念,用中斷的話,微控制器正常執行其他程式,只是時間到了才過來處理延時以後的程式,效率不知道高了多少 2 例程 假設晶振12mhz include reg51.h unsigned int ysj...