📄 cpu427.asm
字号:
CALL RECECHAR
SKPNC
GOTO ICCCOMMRET1
RETLW 0
ICCRECEDATA:
; MOVLW 11H
; MOVWF FSR
ICCRECEDATAL:
CALL RECECHAR
SKPNC
GOTO ICCCOMMRET1
MOVF R3, W
MOVWF SIA
INCF FSR , 1
DECFSZ R1, 1
GOTO ICCRECEDATAL
ICCSENDDATA1:
; BTFSC REN_FLAG, FJIANCEKA
; GOTO ICCSEND_END
CALL RECECHAR
; SKPNC ;7.9
; GOTO ICCCOMMRET1 ;7.9
MOVLW 090H
SUBWF R3, W
SKPNZ
GOTO BI_1
MOVLW 062H
SUBWF R3, W
SKPZ
GOTO ICCCOMMRET
BI_1:
CALL RECECHAR
SKPNC
GOTO ICCCOMMRET1
MOVF R3,1
SKPNZ
GOTO ICCSEND_END
MOVLW 081H
SUBWF R3, W
SKPZ
GOTO ICCCOMMRET
ICCSEND_END:
RETLW 0
ICCSENDDATA:
; MOVLW 15H
; MOVWF FSR
MOVLW .40 ;.26
MOVWF R3
ICCSENDDATA_WAIT:
DECFSZ R3, 1
GOTO ICCSENDDATA_WAIT
MOVF SIA, W
MOVWF R3
CALL SENDCHAR
SKPNC
GOTO ICCCOMMRET1
INCF FSR, 1
DECFSZ R1, 1
GOTO ICCSENDDATA
BTFSC REN_FLAG, FCHONGSHOU
GOTO CHONGSHOU1 ; ICCSENDDATA1
BTFSC REN_FLAG, FJIANCEKA
GOTO ICCSEND_END
GOTO ICCSENDDATA1
; BSF STATUS, 6
; CALL WAIT5MS
; BCF STATUS, 6
CHONGSHOU1:
MOVLW 10H
MOVWF FSR
CALL RECECHAR
SKPNC
GOTO ICCCOMMRET1
CALL RECECHAR
; SKPNC ;7.9
; GOTO ICCCOMMRET1 ;7.9
BCF REN_FLAG, FCHONGSHOU
MOVF R3, W
MOVWF 14H
CLRF 10H
; CLRF 12H
CLRF 13H
MOVLW 0C0H
MOVWF 11H
; BSF STATUS, 6
; CALL WAIT5MS
; CALL WAIT5MS
; BCF STATUS, 6
; DELAYETU .27
; DELAYETU 0FFH
;ICCCOMMRET1: ;7.9
;ICCCOMMRET: ;7.9
RETLW 0
ICCCOMMRET:
ICCCOMMRET1: ;7.9
; BCF STATUS, 5
; BCF STATUS, 6
; MOVLW 70H
; MOVWF FSR
; BSF FLAG, FFEIFAKA
BCF STATUS, 5
; CLRF REN_FLAG ;7.10
GOTO FEIFAKA_HIUFU1
;;;;;;
; RETLW 0
;**********************************
;JIE SHOU YI GE ZI FU
;RUO JIE SHOU DAO ZI FU C=0
;R3 WEI JIE SHOU DAO DE ZHI FU
;R6 BIAO SHI CHONG CHUAN DE CI SHOU
;**************************************
;RECECHAR_ZHUAN:
RECECHAR:
MOVLW .3
MOVWF R6
RECECHAR_CHONG:
BSF PORTA, 0
BSF PORTA, 2
MOVLW B'00000101'
TRIS PORTA
MOVLW .200
MOVWF R4
CLRF R5
RECECHARL:
; NOP
BTFSC REN_FLAG, USER0SAM1
GOTO RECESAMIO
BTFSS PORTA, IOUSER
GOTO RECECHARBEGIN
GOTO RECECHAR2
RECESAMIO:
BTFSS PORTA, IOSAM
GOTO RECECHARBEGIN
RECECHAR2:
DECFSZ R5, 1
GOTO RECECHARL
DECFSZ R4, 1
GOTO RECECHARL
IOERROR:
SETC
RETLW 0
RECECHARBEGIN:
MOVLW .12
MOVWF R3
RECEBEGIN_WAIT:
DECFSZ R3, 1
GOTO RECEBEGIN_WAIT
MOVLW .9
MOVWF R5
CLRF R4
RECECHAR3:
RRF R3, 1 ;4 clock
;CALL
DELAYETU .27 ;324 clock
BTFSC REN_FLAG, USER0SAM1 ;4/8clock
GOTO RECECHAR4 ;8 clock
BTFSS PORTA, IOUSER ;4/8 clock
GOTO RECECHAR3_1 ;8 clock
SETC ;4 clock
INCF R4, 1
GOTO RECECHAR3_2 ;8 clock
RECECHAR3_1:
NOP
NOP ;4 CLOCK
CLRC ;4 clock
RECECHAR3_2:
NOP ;4 CLOCK
DECFSZ R5, 1 ;4/8 clock
GOTO RECECHAR3 ;8 clock
GOTO RECESTOP
RECECHAR4:
BTFSS PORTA, IOSAM ;4/8 clock
GOTO RECECHAR4_1 ;8 clock
SETC ;4 clock
INCF R4, 1
GOTO RECECHAR4_2 ;8 clock
RECECHAR4_1:
NOP
NOP
CLRC ;4 clock
RECECHAR4_2:
DECFSZ R5, 1 ;4/8 clock
GOTO RECECHAR3 ;8 clock
RECESTOP:
;CALL
DELAYETU .25 ;.27 ;;;GOLD
SKPC
GOTO RECESTOP_1
BSF REN_FLAG, JIAOYANWEI
GOTO RECESTOP_2
RECESTOP_1:
BCF REN_FLAG, JIAOYANWEI
RECESTOP_2:
SKPC
GOTO RECESTOP_3
DECF R4, 1
RECESTOP_3:
;SENDCHAR_JIAOYAN1
; CLRF R4
; BTFSC R3, 0
; INCF R4, 1
; BTFSC R3, 1
; INCF R4, 1
; BTFSC R3, 2
; INCF R4, 1
; BTFSC R3, 3
; INCF R4, 1
; BTFSC R3, 4
; INCF R4, 1
; BTFSC R3, 5
; INCF R4, 1
; BTFSC R3, 6
; INCF R4, 1
; BTFSC R3, 7
; INCF R4, 1
;QIU DE JIAO YAN WEI SHI R4.0
; MOVLW 70H
; MOVWF FSR
; BTFSC FLAG1, SENDJIAOYAN
; GOTO SENDCHAR_JIAOYAN2
BTFSC REN_FLAG, JIAOYANWEI
GOTO RECECHARODD
BTFSS R4, 0
GOTO RECECHAROK
RECECHARERR:
DECFSZ R6, 1
GOTO RECECHAR6
GOTO IOERROR
RECECHAR6:
BTFSC REN_FLAG, USER0SAM1
GOTO RECECHAR7
MOVLW B'00000000'
TRIS PORTA
BCF PORTA, IOUSER
GOTO RECECHAR8
RECECHAR7:
MOVLW B'00000000'
TRIS PORTA
BCF PORTA, IOSAM
RECECHAR8:
;CALL
DELAYETU .27
GOTO RECECHAR_CHONG
RECECHARODD:
BTFSS R4, 0
GOTO RECECHARERR
RECECHAROK:
CLRC
RETLW 0
;**********************************
;FA SONG YI GE ZI FU R3,
;R6 BIAO SHI CHONG CHUAN CI SHOU
;R4.0 CUN JI SUAN DE JIAO YAN WEI
;R5 CUN WIE SHOU
;R2, CUN R3 DE NEI RONG
;
;*********************************
SENDCHAR_ZHUAN:
MOVLW .3
MOVWF R6
SENDCHAR_CHONG:
MOVLW 07H
MOVWF R5
MOVF R3, W
MOVWF R2
SEND_JIAOYAN:
RRF R2, 1
ADDWF R2, W
DECFSZ R5, 1
GOTO SEND_JIAOYAN
MOVWF R4
; BTFSC R3, 0
; INCF R4, 1
; BTFSC R3, 1
; INCF R4, 1
; BTFSC R3, 2
; INCF R4, 1
; BTFSC R3, 3
; INCF R4, 1
; BTFSC R3, 4
; INCF R4, 1
; BTFSC R3, 5
; INCF R4, 1
; BTFSC R3, 6
; INCF R4, 1
; BTFSC R3, 7
; INCF R4, 1 ;QIU DE JIAO YAN WEI SHI R4.0
; MOVLW 70H
; MOVWF FSR
; BSF FLAG1, SENDJIAOYAN
; GOTO SENDCHAR_JIAOYAN1
;SENDCHAR_JIAOYAN2:
; BCF FLAG1, SENDJIAOYAN
BSF PORTA, 0
BSF PORTA, 2
MOVLW B'00000000'
TRIS PORTA
MOVLW .9
MOVWF R5
MOVF R3, W
MOVWF R2
BTFSS R4, 0
GOTO SENDCHAR_1
SETC
GOTO SENDCHAR_2
SENDCHAR_1:
CLRC
SENDCHAR_2:
BTFSC REN_FLAG, USER0SAM1
GOTO SENDCHAR1
BCF PORTA, IOUSER
GOTO SENDCHAR2
SENDCHAR1:
BCF PORTA, IOSAM ;START BIT
SENDCHAR2:
RRF R3, 1 ;4 clock
;CALL
DELAYETU .27 ;324 clock
; MOVLW .27 ;4 CLOCK
; MOVWF R0 ;4 CLOCK
; NOP
; ; NOP
;DELAYETU1_1
; DECFSZ R0, 1 ;4/8 CLOCK
; GOTO DELAYETU1_1 ;8 CLOCK
BTFSC REN_FLAG, USER0SAM1 ;4/8 clock
GOTO SENDCHAR3 ;8 clock
SKPC ;4/8 clock
GOTO SENDCHAR2_1 ;8 clock
BSF PORTA, IOUSER ;4 clock
NOP ;4 CLOCK
GOTO SENDCHAR4 ;8 clock
SENDCHAR2_1:
BCF PORTA, IOUSER ;4 clock
GOTO SENDCHAR4 ;8 clock
SENDCHAR3:
SKPC ;8/4 clock
GOTO SENDCHAR3_1 ;8 clock
BSF PORTA, IOSAM ;4 clock
GOTO SENDCHAR3_2 ;8 clock
SENDCHAR3_1:
NOP ;4 CLOCK
BCF PORTA, IOSAM ;4 clock
SENDCHAR3_2:
SENDCHAR4:
DECFSZ R5, 1 ;8/4 clock
GOTO SENDCHAR2 ;8 CLOCK
;CALL
DELAYETU .26
MOVLW B'00000101'
TRIS PORTA
; CLRC
MOVF R2, W
MOVWF R3
DELAYETU .26
BTFSC REN_FLAG, USER0SAM1
GOTO SENDCHAR5
BTFSS PORTA, IOUSER
GOTO SENDCHARERROR
SENDCHAR5_1
DELAYETU .12 ;.12 ;;; ;.20
SENDCHAR5_2
CLRC
RETLW 0
SENDCHAR5:
BTFSC PORTA, IOSAM
GOTO SENDCHAR5_1
; RETLW 0
SENDCHARERROR:
DELAYETU .12
DECFSZ R6, 1
GOTO SENDCHAR_CHONG
SETC
RETLW 0
;USERPOWEROFF: ;IC KA XIA DIAN
; BCF PORTA, RSTUSER
; BCF PORTB, CICVCC
; RETLW 0
;SAMPOWERON: ;SAM SHANG DIAN
; MOVLW B'00000101'
; TRIS PORTA
; BSF PORTA, RSTSAM
; RETLW 0
;SAMPOWEROFF
; BCF PORTA, RSTSAM
; RETLW 0
BUJIMINGKAHUIXIE:
; MOVLW 10H
; MOVWF FSR
CALL FUFSR10H
MOVLW 68H
MOVWF 16H
MOVLW 082H
MOVWF 17H
MOVLW 05H
MOVWF 18H
MOVLW 016H
MOVWF 1AH
CLRF R1
MOVLW 05H
MOVWF R2
; MOVLW 50H
; MOVWF FSR
BSF FSR, 6
BUJIMINGKAHUIXIE1: ;QIU JIAO YAN HE
MOVF SIA, W
ADDWF R1, 1
INCF FSR, 1
DECFSZ R2, 1
GOTO BUJIMINGKAHUIXIE1
; MOVLW 10H
; MOVWF FSR
BCF FSR, 6
MOVF 17H, W
ADDWF R1, 1
MOVF 18H, W
ADDWF R1, W
MOVWF 19H
MOVLW 02H
MOVWF R1
MOVLW 03H
MOVWF R3
CLRF R2
CALL PUTDATAFILE3
BCF REN_FLAG, USER0SAM1
CALL ICCCOMMAND
MOVLW 16H
MOVWF FSR
CALL ICCSENDDATA
; MOVLW 02H
; MOVWF R1
; MOVLW 03H
; MOVWF R2
; MOVLW 05H
; MOVWF R3
; CALL PUTDATAFILE3
MOVLW 03H
MOVWF 13H
MOVLW 05H
MOVWF 14H
; BCF REN_FLAG, USER0SAM1
CALL ICCCOMMAND
MOVLW 50H
MOVWF FSR
; CALL FUFSR30H
CALL ICCSENDDATA
; MOVLW 02H
; MOVWF R1
; MOVLW 02H
; MOVWF R3
; MOVLW 08H
; MOVWF R2
BCF FSR, 6
MOVLW 08H
MOVWF 13H
MOVLW 02H
MOVWF 14H
; CALL PUTDATAFILE3
; BCF REN_FLAG, USER0SAM1
CALL ICCCOMMAND
MOVLW 19H
MOVWF FSR
CALL ICCSENDDATA
MOVLW 02H
MOVWF R1
MOVLW 07
MOVWF R2
MOVLW 1
MOVWF R3
CALL PUTDATAFILE2
; BCF REN_FLAG, USER0SAM1
CALL ICCCOMMAND
; MOVLW 10H
; MOVWF FSR
CALL FUFSR10H
CALL ICCRECEDATA
BSF FSR, 6 ;7.6 BI JIAO HUI XIE DE BIAO HAO SHI FU ZHENG QUE
MOVF 14H, W ;7.6
; MOVLW 0FFH
BCF FSR, 6 ;7.6
SUBWF 10H, W ;7.6
BSF STATUS, 6
BCF STATUS, 5
SKPNZ
GOTO BUJIMINGKA_JIA
BUJIMINGKA_END:
BCF REN_FLAG, FBUJIMINGKA
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -