|
機器人diy這本書裡面的範例真的都很不錯!
只是有些地方介紹的不是很詳細
我照著書上範例作!
但是從晶片p1.0、1.1、1.2這三條接至cd4053b 這閘門電路之間 示波器沒有量出方波訊號
伺服馬達一直無法運動,且晶片已經更換過了!
所以我在想會不會是程式上出了問題
所以想請教各位大大能否幫忙看看出現在問題點可能是在哪!?該如何去修改
附上電路圖及程式
-------------------------------------------------------------------------------------------------
;title
;
ORG 00H
MOV SP,60H
AGAIN:
MOV A,P3
ANL A,#03H
LOOP1:
CJNE A,#00H,GOBACK
CJNE A,#01H,LEFTTURN
CJNE A,#02H,RIGHTTURN
;前進程式碼
GOAHEAD:
MOV P1,#05H
CALL DELAY
MOV P1,#00H
CALL DELAY
MOV P1,#02H
CALL DELAY
MOV P1,#07H
CALL DELAY
MOV P1,#05H
CALL DELAY
MOV A,P3
ANL A,#03H
CJNE A,#03H,LOOP1
JMP GOAHEAD
;後退程式碼
GOBACK:
CALL BACK3
CALL RIGHT3
JMP AGAIN
;左轉程式碼
LEFTTURN:
CALL LEFT3
JMP AGAIN
;右轉程式碼
RIGHTTURN:
CALL RIGHT3
JMP AGAIN
;後退副碼
BACK3:
MOV R1,#03H
BACK:
MOV P1,#05H
CALL DELAY
MOV P1,05H
CALL DELAY
MOV P1,07H
CALL DELAY
MOV P1,02H
CALL DELAY
MOV P1,00H
CALL DELAY
DJNZ R1,BACK
RET
;右轉副碼
RIGHT3:
MOV R1,#03H
RIGHT:
MOV P1,#05H
CALL DELAY
MOV P1,#01H
CALL DELAY
MOV P1,#03H
CALL DELAY
MOV P1,#06H
CALL DELAY
MOV P1,#04H
CALL DELAY
DJNZ R1,RIGHT
RET
;左轉副碼
LEFT3:
MOV R1,#03H
LEFT:
MOV P1,#05H
CALL DELAY
MOV P1,#01H
CALL DELAY
MOV P1,#03H
CALL DELAY
MOV P1,#06H
CALL DELAY
MOV P1,#04H
CALL DELAY
DJNZ R1,LEFT
RET
;反應時間0.5s
DELAY:
MOV R0,#0AH
MOV TMOD,01H
LOOP2:
MOV TL0,#<(65536-50000)
MOV TH0,#<(65536-50000)
SETB TR0
LOOP3:
JNB TF0,LOOP3
CLR TR0
CLR TF0
DJNZ R0,LOOP2
RET
END |
|