各位微控制器達人幫個忙用組合語言做發光二極體迴圈點亮的程式要求使八隻發光二極體做迴圈點亮一次

2022-02-06 19:05:29 字數 2809 閱讀 8517

1樓:匿名使用者

org 00h

jmp main

org 30h

main: mov a,#0ffh ;設定左移初值clr c ;c=0

mov r2,#08h ;設定左移次數

loop: rlc a ;左移1位

mov p1,a ;輸出到p1

call delay ;延時

djnz r2,loop ;左移7次

mov r2,#07h ;

loop1: rrc a ;右移1位

mov p1,a ;輸出到p1

call delay ;

djnz r2,loop1 ;右移7次

jmp main

delay: mov r3,#20 ;延時0.2sd1: mov r4,#20

d2: mov r5,#248

djnz r5,$

djnz r4,d2

djnz r3,d1

retend

2樓:匿名使用者

;;; led單燈跑動

org 0000h

ajmp main

org 0030h

main:

mov a,#0feh

mov r0,#9 ;迴圈九次,8個燈亮及1次燈全滅start:

mov p0,a ;輸出到p0口連線的 led燈上setb c ;置進位c

rlc a ;帶進位左移

call delay ;延時一段時間djnz r0,start ;反覆迴圈

ajmp main ;重新開始

;延時子程式

delay:

mov r1,#15

d1: mov r2,#100

d2: mov r3,#100

djnz r3,$

djnz r2,d2

djnz r1,d1

retend

自己改改吧,不會的話,再說。

跪求微控制器c51用組合語言寫的程式,功能為:8只發光二極體依次點亮,從左向右移動,時間間隔0.5秒。

3樓:匿名使用者

main: mov p1, #11111110b ; p1 口 點亮一個發光二極體

acall delay ; 呼叫延時子程式

mov p1, #11111101b ; 從左向右移動 一位

acall delay

mov p1, #11111011b

acall delay

mov p1, #11110111b

acall delay

mov p1, #11101111b

acall delay

mov p1, #11011111b

acall delay

mov p1, #10111111b

acall delay

mov p1, #01111111b

acall delay

jmp main ; 轉移 至 main 迴圈

delay: mov r5,#250 ; 延時子程式 6.000 m 晶振 約 0.5 秒

d1: mov r6,#250

d2: djnz r6,$

djnz r5,d1ret

4樓:小石頭

;假設通過p0口置低位控制二極體點亮

main:

clr c

main1:

rrc a;

mov p0,a

lcall wait2

ljmp main1

;延時程式11.0592m的精震

wait2: ;0.5s

mov r5,#0ah

wait22: mov r4,#5ah

mov r3,#09bh

wait21: djnz r3,wait21djnz r4,wait21

djnz r5,wait22ret

用51微控制器組合語言控制8個發光二極體

5樓:匿名使用者

很簡單的,你好好看看書編一下程式吧,正好可以提高程式設計能力!

如有幫助請採納,謝謝!!

6樓:匿名使用者

key1 bit p3.2

key2 bit p3.3

org 00h

mov p3,#255

mov a,#254

mov p1,a

continue:

jnb key1,right

jnb key2,left

jmp continue

right:

rr a

mov p1,a

acall delay

jmp continue

left:

rl a

mov p1,a

acall delay

jmp continue

delay:

mov r7,#250

lp2:mov r6,#200

lp1:nop

djnz r6,lp1

djnz r7,lp2

retend

在51微控制器中用組合語言rlca為什麼左移兩位

51微控制器中,rlc a是帶進位的迴圈左移,所以執行的結果不是將低位清0,要想將低位清零,實現點亮兩個燈可以採取的方法 1 直接賦值實現 a mov p1,0fch b mov a,p1 anl a,0fch mov p1,a 2 用迴圈命令,但每迴圈一次,需要將c清0mov a,p1 clr c...

微控制器高手們誰會用組合語言實現0 99間的計數 暫停 清零程式。對初學者實在是太難了。大神幫幫忙吧

org 0000h ljmp main org 000bh ljmp t0isr org 0030h able 共陰極數碼管顯示 表db 3fh,06h,5bh,4fh,66h 12345db 6dh,7dh,07h,7fh 6789main mov sp,5fh mov tmod,01h mov ...

51微控制器外部中斷組合語言問題

主程式是 流水燈0到7依次點亮 流水燈7到0依次點亮,反覆迴圈。外部中斷程式是 燈全亮 全滅3次。但是,程式沒有開中斷的指令,中斷程式是不會執行的。start 在下面新增 setb ea 開總中斷.setb ex0 開int0中斷.clr it0 設定int0為電平觸發.mov a,00h 外部中斷...