微控制器中用彙編燈閃爍 花式流水燈

2021-10-17 07:12:29 字數 834 閱讀 6157

//

最簡單的流水燈//

前面我已經使用了sbit 將埠定義出來了,考慮到**比較多就省略了。

void led1()    //最簡單的流水燈
//

簡化流水燈//

1、定義乙個變數0x01(對應第乙個燈)

2、進入迴圈,判斷a是否是否等於0x100,不等於就執行迴圈

0x100對應的是16進製制裡面的第九位,第八位是0x80也是微控制器最後乙個燈

3、將a的值送入埠點亮第乙個燈

4、將a的值左移一位(第二個燈)之後賦值給a,即從新賦值。

重複上述步驟直到退出迴圈

如果微控制器1是亮的話需要將取反標誌"~"去掉。

void led2()  //簡化版流水燈 順時針}
//

交替閃爍//

1、定義led用來傳遞取反的值

2、定義a用來計數

3、進入迴圈判斷a小於5條件成立

4、將led取反然後賦值給led,即重新賦值

5、將led的值送入埠

6、延遲

7、a自增一

8、迴圈五次之後退出迴圈,關閉所有燈。

void led4() //交替閃爍五次  p1 = 0xff;}
鏈結

提取碼:8yay

微控制器流水燈閃爍

很多人在點亮乙個led燈以後,覺得點亮流水燈其實沒什麼意思。不過我覺得對於從點亮乙個led等,到玩順流水燈,其實我們還是可以提高不少的。比如 1.微控制器軟體延時的計算 2.c語句的語法學習 3.加深對io口的操作,以及位操作 那麼下面我們就開始,流水燈的操作吧 對8個發光二極體迴圈亮滅。主要我這裡...

STC微控制器 閃爍燈,LED流水燈 程式講解

所謂的閃爍燈就像警車一樣,嗶哩嗶哩閃爍。led閃爍其實就是將乙個燈開一下,關一下。在迴圈中不斷的進行開關,這就是邏輯其實挺簡單的,但是中間需要有乙個延時,如果不延時就不會看到效果。在這裡需要用到c語言裡面的乙個重定義關鍵字 int 分為無符號 unsigned 和有符號 signed 兩種型別,預設...

微控制器 流水燈

基礎知識 1.c語言預處理命令 define a p0 注意後邊不用加分號 在 中使用p0口時,可以直接用a代替,防止修改埠時大面積修改 2.迴圈左移和右移函式 crol a,b 迴圈左移函式,a是左移的值,b是左移的位數。包含在intrins.h庫函式裡面。cror a,b 迴圈右移函式,原理同上...