標題: [求助]各位大蝦,我的跑馬燈已經(jīng)做了兩種不同的形式了,懇求第三種? [打印本頁]
作者: city 時間: 2008-6-13 23:26
標題: [求助]各位大蝦,我的跑馬燈已經(jīng)做了兩種不同的形式了,懇求第三種?
各位大蝦:
小妹,我好不容易弄來了兩種跑馬燈,還差一種從兩面到中間或者中間到兩面的,請各位大蝦幫我接著寫下去吧~~~最好附帶注釋的,想學一下 ^ ^ 謝謝.
ORG 0000h
ljmp 0030h
org 0030h
START: MOV A,#0FEH
LOOP: MOV R0,#7
LOOPL: MOV P1,A
RL A
CALL DELAY
DJNZ R0,LOOPL
MOV R0,#7
LOOPR: mov r1,#7
MOV P1,A
RR A
CALL DELAY
DJNZ r1,LOOPR
LJMP LOOP
DELAY: MOV R7,#200
D1: MOV R6,#250
DJNZ R6,$
DJNZ R7,D1
RET
END
此致
敬 禮
菜鳥小妹(上)
作者: city 時間: 2008-6-14 18:23
哪位大蝦行行好啊~~~~~
復一下貼啊````
作者: xb_crazyman 時間: 2008-6-14 23:29
c語言的要不?
作者: yysmcu 時間: 2008-6-15 10:09
從兩邊到中間亮燈程序如下,從中間到兩邊只要把順序依次反過來就行了。
ORG 0000H
AJMP START
ORG 0030H
START: MOV P1,#7EH ;點亮LED0和LED7
ACALL DELAY ;延時亮一定時間
MOV P1,#0BDH
ACALL DELAY
MOV P1,#0DBH
ACALL DELAY
MOV P1,#0E7H ;點亮LED3和LED4
ACALL DELAY
AJMP START
DELAY: MOV R7,#100
DEL1: MOV R6,#200
DJNZ R6,$
DJNZ R7,DEL1
RET
END
方法不止一種,僅供參考。
作者: yysmcu 時間: 2008-6-15 10:17
如果要實現(xiàn)從兩邊到中間接著又從中間到兩邊的話,就可以建立一個TABLE,用查表的方法來實現(xiàn),LZ認真想想不難的,或你直接在亮完中間兩燈后繼續(xù)反過來向外依次亮燈也能實現(xiàn)。
作者: city 時間: 2008-6-15 12:28
TO xb_crazyman
C語言的不行啊,還沒學到 .呵~~~
作者: city 時間: 2008-6-15 12:29
TO yysmcu
太感謝拉,等我試一下先```
作者: admin 時間: 2008-6-15 12:35
http://www.torrancerestoration.com/mcu/537.html 這里還有一個
作者: city 時間: 2008-6-15 14:22
TO admin
謝謝,向左向右的我有了
作者: city 時間: 2008-6-15 14:32
TO 各位:
我在運行時,顯示有錯誤,但是讀不懂它的錯誤指令,請幫忙我看一下
error A9 :syntax error
error A9 :syntax error
error a3: illegal character
error a3: illegal character
error a3: illegal character
是這條程序出什么問題了嗎??
START: MOV P1,#7EH
[此貼子已經(jīng)被作者于2008-6-15 14:36:11編輯過]
作者: admin 時間: 2008-6-15 14:49
city先生,,我在如下帖子中解答了你的問題。
http://www.torrancerestoration.com/bbs/dpj-171-1.html
[此貼子已經(jīng)被作者于2008-6-15 14:50:08編輯過]
作者: city 時間: 2008-6-16 13:33
我已經(jīng)把兩個程序合并好了,然后為了演示方便,需要加上開關,想請教一下各位,應該怎么加開關?
程序如下:
ORG 0000h
ljmp 0030h
org 0030h
START: MOV A,#0FEH
LOOP: MOV R0,#7
LOOPL: MOV P1,A
RL A
CALL DELAY
DJNZ R0,LOOPL
MOV R0,#7
LOOPR: mov r1,#7
MOV P1,A
RR A
CALL DELAY
DJNZ r1,LOOPR
LJMP LOOP
ORG 0000H
AJMP main
main: mov p1,#7eh
acall delay
mov p1,#0bdh
acall delay
mov p1,#0dbh
acall delay
mov p1,#0e7h
acall delay
ajmp start
delay: mov r7,#100
del1:mov r6,#200
djnz r6,$
djnz r7,del1
ret
end
作者: city 時間: 2008-6-16 13:34
再麻煩各位指點一下了 
作者: admin 時間: 2008-6-16 16:15
開關加在電源上撒
作者: city 時間: 2008-6-16 18:58
TO admin
在程序上不用反映出來嗎?
作者: yysmcu 時間: 2008-6-16 23:29
ORG 0000h
AJMP START
ORG 0030h
START:JNB P3.2,LOOP ;該按鈕按下執(zhí)行左右移流水燈
JNB P3.3,main ;該按鈕按下執(zhí)行兩邊到中間的流水燈
SJMP START
LOOP:MOV A,#0FEH
MOV R0,#7
JNB P3.3,main
LOOPL:MOV P1,A
RL A
ACALL DELAY
DJNZ R0,LOOPL
MOV R1,#7
LOOPR:MOV P1,A
RR A
CALL DELAY
DJNZ R1,LOOPR
LJMP LOOP
main:JNB P3.2,LOOP
mov p1,#7eh
acall delay
mov p1,#0bdh
acall delay
mov p1,#0dbh
acall delay
mov p1,#0e7h
acall delay
ajmp main
delay: mov r7,#100
del1:mov r6,#200
djnz r6,$
djnz r7,del1
ret
end
[此貼子已經(jīng)被作者于2008-6-16 23:32:27編輯過]
作者: yysmcu 時間: 2008-6-16 23:35
注意實驗時上面程序最好全部用大寫字母編程,以免編譯出錯
作者: city 時間: 2008-6-17 12:43
TO yysmcu
是的,
,明白了,等我燒進去試一下.
作者: city 時間: 2008-6-18 13:11
TO 各位大蝦
以上程序都已經(jīng)燒進芯片了,但是實際運行有問題,它只有左邊連續(xù)的三盞燈會亮,而且好像還不會動?是不是晶振有問題?聽說晶振都很脆弱的。麻煩各位幫我看一下,可能出什么問題了。
作者: yysmcu 時間: 2008-6-18 14:33
你先測測是不是LED燒了?
還有可以在Keil C 中模擬單步運行,看看IO口狀態(tài)變化情況啊
作者: city 時間: 2008-6-18 19:06
TO yysmcu
知道拉,原來是有連接芯片底座的焊點沒有焊好,現(xiàn)在可以亮了,也可以走了,但是它的走法不是我程序所編的那樣,好像由左到右,它是亮一盞,然后左移一格連續(xù)兩盞同時亮,再一盞一盞亮下去.
我發(fā)現(xiàn)P2.6(A789S52芯片的輸出口)和P2.5;P2.1和P2.0總時同時亮同時滅,看上去又不像是短路喔.
這又是什么問題拉,請教,請教?
作者: city 時間: 2008-6-20 19:48
to 各位
我的跑馬燈已經(jīng)制作出來了,可能是有點虛焊,電路有點不穩(wěn)定.不過程序總算能用.謝謝各位的幫助,尤其是回過我帖子的各位大蝦.
謝謝
本貼完!
作者: fzh520520 時間: 2008-7-21 15:03
。。。!
作者: 單片機萬歲 時間: 2008-8-16 16:23
跑馬等挺好玩的~~~
作者: CHAOWU6636 時間: 2008-9-24 20:08
我燒了,運行OK,就延時不夠。LED閃的太快!
作者: admin 時間: 2009-6-3 02:59
大家繼續(xù)做新的出來啊
作者: j183048114 時間: 2010-12-14 08:59
路過拿走
歡迎光臨 (http://www.torrancerestoration.com/bbs/) |
Powered by Discuz! X3.1 |