Robofun 機器人論壇

標題: 電子羅盤TDCM3與8051 [打印本頁]

作者: 小富    時間: 2009-9-14 01:09
標題: 電子羅盤TDCM3與8051
本帖最後由 小富 於 2009-9-14 01:11 編輯

我用8051寫校正模式的程式跟TDCM3用串列傳輸接收TDCM3的資料能接收到41H、43H顯示在LCD上但4BH就是抓不到所以後面52H、44H、59H也都抓不到,請大大我看一下問題出在哪謝謝!!!
我用Kile c寫的
EXTRN CODE(WLCD_COMMAND)
EXTRN CODE(WLCD_DATA)
EXTRN CODE(SET_LCD)
EXTRN CODE(CLEAR_LCD)
EXTRN CODE(DISP_LCD_CHAR)
;------------------------------------------------
        RTS EQU P3.7
        RX   EQU     P3.6   
;------------------------------------------------
        ORG 00H
        JMPSTART
;------------------------------------------------         
START:
CALL    SET_LCD
CALL    CLEAR_LCD
SETB    RTS
SETB    RX

RS232:
MOV     TMOD,#00100001B
MOV     TH1,#-03
MOV     SCON,#01010000B
SETB    TR1
CLR RI
CLR TI

RUN:
MOV     R2,#80H
CALL WLCD_COMMAND
CLR RX
CLR RTS
MOV     R5,#1   ;呼叫延遲副程式,延遲1ms      
CALL    DELAY
SETB    RTS

JNB RI,$
CLR RI
MOV     A,SBUF  ;收到41H
MOV     R1,A
CALL DISP_LCD_CHAR ;LCD上顯示41

JNB RI,$
CLR RI  
MOV     A,SBUF;收到43H
MOV     R1,A
CALL DISP_LCD_CHAR ;LCD上顯示43

JNB RI,$
CLR RI  
MOV     A,SBUF;收到4BH
MOV     R1,A
CALL DISP_LCD_CHAR ;LCD上顯示4B

MOV     R5,#16 ;呼叫延遲副程式,延遲16ms      
CALL    DELAY
SETB    RX
        
JNB RI,$
CLR RI  
MOV     A,SBUF  ;收到52H
MOV     R1,A
CALL DISP_LCD_CHAR ;LCD上顯示52

JNB RI,$
CLR RI  
MOV     A,SBUF;收到44H
MOV     R1,A
CALL DISP_LCD_CHAR ;LCD上顯示44

JNB RI,$
CLR RI  
MOV     A,SBUF;收到59H
MOV     R1,A
CALL DISP_LCD_CHAR ;LCD上顯示59
JMP RUN
;------------------------------------------------
        ;延遲副程式: R5*1ms  
;------------------------------------------------   
DELAY:  
MOV     R6,#2  
MOV     R7,#249
DJNZ    R7,$
DJNZ    R6,$
DJNZ    R5,DELAY
RET




歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/) Powered by Discuz! X3.2