51微控制器組合語言程式,按鍵控制兩個發光二極體的同時閃爍,交替閃爍

2022-03-10 04:59:01 字數 5692 閱讀 6295

1樓:匿名使用者

;p1.0 p1.1接2led,p2.0接一按鍵。上電2led不亮,按第1 次鍵2led同時以1s週期閃爍,按第2 次 2led輪流1s閃爍...同此迴圈。

;11 04 17

org 00h

ajmp main

org 0bh

ajmp t0int

org 30h

main:

mov tmod,#01h ;

mov th0,#3ch

mov tl0,#0b0h

setb ea

setb et0

mov r0,#10

key:

acall disp

jb p2.0,$-2

acall disp

jnb p2.0,$-2

setb tr0

inc r1 ;r1為按鍵按下次數

cjne r1,#2,key0

ajmp key

key0:

mov r1,#1

ajmp key

disp:

cjne r1,#1,disp0

ajmp disp1

disp0:

cjne r1,#2,rt

ajmp disp2

disp1: ;一起閃

jnb f0,disp11 ;f0為0.5s到標誌,每0.5s求反一次

setb p1.0

setb p1.1

retdisp11:

clr p1.0

clr p1.1

rt:ret

disp2: ;交替閃

jnb f0,disp21 ;f0為0.5s到標誌,每0.5s求反一次

setb p1.0

clr p1.1

retdisp21:

clr p1.0

setb p1.1

rett0int:

mov th0,#3ch

mov tl0,#0b0h

djnz r0,rti

mov r0,#10

cpl f0

rti:

retiend

2樓:做而論道

要求很簡單,程式,也就可以簡單一些:

key1 equ p3.7

led1 equ p3.2

led2 equ p3.3

org 0000h

ajmp main

org 000bh

ajmp t0_int

org 0030h

main:

mov tmod, #01h ;

mov th0, #4ch

setb ea

setb et0

mov r2, #10

call wait_kay

setb tr0

;------------------------------m_loop:

call wait_kay

cpl led1

ajmp m_loop

;******************************wait_kay:

jb key1, $

acall delay10ms

jb key1, wait_kay

jnb key1, $

retdelay10ms:

mov r6, #20

djnz r7, $

djnz r6, $ - 2

ret;------------------------------t0_int:

mov th0, #4ch

djnz r2, t0_end

mov r2, #10

cpl led1

cpl led2

t0_end: reti

;------------------------------end

51微控制器組合語言控制兩個p1^0,p1^1的led以一定時間交替閃爍,謝謝。並說明定時器延時子程式。

3樓:匿名使用者

;間隔時間不計較精度

org 00h

loop:

mov p1.0,c

cpl c ;標誌取反

mov p1.1,c

acall delay ;呼叫延時子程式jmp loop ;返回,繼續delay: ;延時子程式

mov r7,#200

lp7:

mov r6,#200

lp6:

mov r5,#200

djnz r5,$

djnz r6,lp6

djnz r7,lp7ret

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

4樓:匿名使用者

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

5樓:小石頭

;假設通過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個發光二極體

6樓:匿名使用者

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

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

7樓:匿名使用者

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微控制器控制led每一秒鐘閃爍一次,並在1602顯示閃爍次數,不要組合語言,速求

8樓:匿名使用者

最好吧你的圖 怎麼接線的 貼出來 這樣清楚明白

求大神寫一個51微控制器組合語言彩燈控制程式

9樓:做而論道

16位拉幕燈,可算是一種顯示模式:

用51微控制器(組合語言寫)寫一個跑馬燈程式??知道的幫個忙寫寫。

10樓:白朮的草戒指

急用!請教!!!

用組合語言程式,程式功能:實現方向可控的跑馬燈

程式設計要求:用八個led發光二極體實現跑馬燈(即:8個燈依次輪流發光,每次只亮一個燈),系統啟動後,跑馬燈右向流轉,按下k1鍵,則反向流轉,再按則再反向……。

接線方法:流水燈接p0口,按鍵k1可自選p1~p3任一引腳。

11樓:胖大海君

答疑解難   跑馬燈程式

org     0000h

ljmp     main

org     0100h

main:            jb          p0.7,main  ;等待開始鍵按下

lcall    ys             ;按鍵延時

jb         p0.7,main

mov     a,#7fh       ;是開始鍵按下  則跑馬燈開始執行

ll:                 mov     p1,a

lcall    ys           ;顯示延時

rr          a             ;迴圈右移一位

jb         p0.6, ll     ;沒有按下停止鍵  則繼續跑馬

lcall    ys            ;按鍵延時

jb          p0.6,ll         ;按下停止鍵 則停止跑馬;否則繼續跑馬

mov      a,#0ffh

mov      p1,a

sjmp     main            ;轉到程式開始處,等待開始鍵的按下

ys:                mov    r7,#150          ;延時子程式

yl:                mov    r6,#200

yy:                nop

djnz    r6,yy

djnz    r7,yl

retend

硬體介面電路如下:

哈哈   還滿意嗎   就請給俺選擇(滿意選項)吧

微控制器組合語言問題

建議你用定時中斷方式,下面的供參考 org 0000h ajmp start org 001bh ljmp time1 定時中斷1入口 org 0030h start mov 30h,0 mov 31h,0 mov 32h,0 mov 33h,0 mov p2,0ffh mov dptr,table...

微控制器串列埠通訊問題(組合語言),微控制器串列埠通訊問題(組合語言)

這倆程式,執行到最後邊,都是 ret,返回指令。返回到何處去呀?呵呵,還是,先解決程式結構的問題。1 程式結構 有問題,沒有呼叫子程式 就不應該有子程式返回指令。2 jnb ti,clr ti 為判斷 串列埠 是否 傳送 完畢的,3 jnb ri,clr ri 為判斷 串列埠 是否 有接收 的,如果...

at89c51微控制器怎麼用組合語言寫「多個延時程式」

微控制器組合語言中要使一個延時程式可以被不同情況下呼叫而延時不同的時間,可以通過類似於c語言中傳遞引數的方式來實現,舉例如下 org 0000h ljmp main org 0030h main mov p0,5ah p0上的led燈間隔點亮mov r7,50 r7是延時傳遞引數lcall dela...