PIC單片機問題(急!!!!!!!!!!!)本人在寫PIC單片機時,用仿真器仿真可以,但燒出來不行哦?
我用的是pic508a,下面我將程序列出來就大家指教!我改成pic54可以!!!
LIST P=12C508A
PC EQU 2
STATUS EQU 3
OSCCAL EQU 5
GP EQU 6
;RB EQU 5
Z EQU 2
COUNT EQU 8
BITNUM EQU 9
DELA EQU 0AH
SUBT EQU 0BH
TENNUM EQU 0CH
ONENUM EQU 0DH
SENTNUM EQU 0EH
THRNUM EQU 0FH ;
FOURNUM EQU 10H
BIGNUM EQU 8
PIC54 EQU 1FFH ;16c54 reset address;
RTCC EQU 1
C EQU 0 ;STATUS LSD
SUB EQU 00H ;init address M
;
ORG PIC54
GOTO MAIN
ORG SUB
;
;
SENT MOVLW BIGNUM
MOVWF COUNT
; BSF RA,4 ;Sent incept bit
; CALL DELAS
; BCF RA,4
; CALL DELAS
CALL DELAY_H
NEXT RRF SENTNUM
BTFSC STATUS,C
BSF GP,0
BTFSS STATUS,C
BCF GP,0
CALL DELAS
DECFSZ COUNT
GOTO NEXT
STOP BSF GP,0
CALL DELAS
BCF GP,0
CLRF SENTNUM
MOVLW BIGNUM
MOVWF COUNT
RETLW 0
;
;
DELAS MOVLW 78H ;400US delay program
MOVWF DELA
LOO DECFSZ DELA
GOTO LOO
RETLW 0
;
DELAY_H MOVLW 3CH
MOVWF DELA
H_LOOP DECFSZ DELA
GOTO H_LOOP
RETLW 0
;
DELAY_START_BIT:
MOVLW 10H
MOVWF SUBT
LOOP_START_BIT:
CALL DELAS
DECFSZ SUBT
GOTO LOOP_START_BIT
RETLW 0
;
;
;
;
;
MAIN:
MOVLW 0X80
MOVWF OSCCAL
MOVLW 3FH
TRIS GP
; MOVLW 0
; MOVWF STATUS
; TRIS RA
BCF GP,0
;
;
;
START_BIT:
; BSF GP,5
; BCF GP,5
; BSF GP,0
; BCF GP,0
BTFSC GP,4 ;RA,0 IS READ DATA BIT.
GOTO START
BTFSS GP,2
GOTO START_BIT
GOTO SENT_TEST_NUMBER
;
START CLRF BITNUM ;CLS BITNUM REGISTER
CLRF TENNUM ;CLS TENNUM REGISTER
; CLRF ONENUM ;CLS TENNUM REGISTER
;
START_TEST_NUMBER:
BTFSS GP,4
GOTO START_BIT
BTFSS GP,1
GOTO START_TEST_NUMBER
NUMBER_00:
BTFSS GP,4
GOTO START_BIT
BTFSC GP,1 ;TEST CONTROL
GOTO NUMBER_00
INCF BITNUM,1
MOVLW 0XFF
SUBWF BITNUM,0
SKPZ
GOTO START_TEST_NUMBER
CLRF BITNUM
INCF TENNUM,1
; MOVLW 0XFF
; SUBWF TENNUM,0
; SKPZ
; GOTO START_TEST_NUMBER
; CLRF TENNUM
; INCF ONENUM,1
GOTO START_TEST_NUMBER
;
SENT_TEST_NUMBER:
MOVLW 0X1E
TRIS GP
BSF GP,0
CALL DELAY_START_BIT
BCF GP,0
MOVF BITNUM,0
MOVWF SENTNUM
CALL SENT
MOVF TENNUM,0
MOVWF SENTNUM
CALL SENT
; MOVF ONENUM,0
; MOVWF SENTNUM
; CALL SENT
; BCF RA,4
CALL DELAS
MOVLW 0X1F
TRIS GP
CALL DELAY_START_BIT
GOTO START_BIT
;
END