51微控制器彙編流水燈實驗

2021-10-06 09:15:33 字數 541 閱讀 4043

51微控制器:彙編點燈程式

使用rr迴圈右移指令實現流水燈的效果。

mov

p2, #01h ;將設定p2暫存器預設值為01h

start:

mov a,

p2;將p2中的資料送入暫存器 a 中

rr a ;

rr迴圈右移指令

movp2, a ;將暫存器 a 中的資料送入到p2暫存器

acall

yanshi

;呼叫延時子程式

ajmp

start

;跳轉到起始位置

yanshi

:;延時函式

movr1, #255

loop

:mov

r0, #255

djnz

r0, $ ;

r0減1不為0跳轉到當前行, $:表示當前行

djnzr1,

loop

;r1減1不為0跳轉 loop

ret;子程式返回

51微控制器流水燈教程。

延時函式 delay 的用法是 在這裡無法用程式的格式寫出來,就給大家截圖吧 在這裡插入描述 for和while是迴圈函式,這個高中就會接觸到一點,不做過多的解釋了,第二行的unsigned int x,y 是給x和y定義的,兩個for中,第二個for是第乙個for的,意思就是,第乙個for中的條件...

微控制器 keil流水燈實驗

做流水燈實驗以前,必須先弄清楚各個發光二極體是怎麼控制的,其次,在了解了keil的內部左移右移函式,就可以寫出比較簡短的流水燈的實驗 在寫的過程中遇到過一些問題,怎麼控制燈的走向,應該用乙個怎麼樣的變數來實現傳遞,這個很重要。解決的方法是定義乙個unsigned char型變數。此外還要寫乙個延時函...

微控制器 流水燈

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