📄 txsend.asm
字号:
MOVWF PORTB
CALL Label_0068
BTFSS 0x38,2
GOTO Label_0069
MOVF 0x49,0
SUBWF 0x24,0
SUBLW 0x05
BTFSS STATUS,C
GOTO Label_006A
BCF 0x38,2
MOVF PORTB,0
IORLW 0xE0
MOVWF PORTB
CALL Label_0068
BTFSS 0x38,2
GOTO Label_0069
BTFSC STATUS,C
GOTO Label_006A
Label_0069 MOVF PORTB,0
IORLW 0x1C
MOVWF PORTB
BSF PORTC,2
CALL Label_0068
BCF PORTC,2
BTFSC 0x38,2
GOTO Label_006B
MOVF PORTB,0
IORLW 0xE0
MOVWF PORTB
CALL Label_0068
BTFSC 0x38,2
GOTO Label_006A
CLRF 0x15
MOVLW 0x0F
MOVWF CCP1CON
GOTO Label_0022
Label_006B BSF 0x36,2
Label_006A RETURN
;---------测霍尔,输出对应桥开启---------------
Label_0022 CLRF 0x3D
Label_0074 INCF 0x3D,1
CALL Label_006C;;;;;;;;;换相处理
MOVF 0x44,0
MOVWF 0x35
;*****************
;MOVLW 0X10
;MOVWF 0X35
;*****************
BSF 0x38,1
BCF 0x39,5
BTFSC 0x37,7
GOTO Label_006D
MOVLW 0x10
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_006E;;;;;;;;;HALL=001
MOVLW 0x30
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_006F;;;;;;;;;HALL=011
MOVLW 0x20
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0070;;;;;;;;;HALL=010
MOVLW 0x60
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0071;;;;;;;;;;HALL=110
MOVLW 0x40
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0072;;;;;;;;;;HALL=100
MOVLW 0x50
SUBWF 0x35,0
BTFSC STATUS, Z
GOTO Label_0073;;;;;;;;;;HALL=101
Label_0076 BCF 0x38,1
MOVF 0x3D,0
SUBLW 0x04
BTFSC STATUS,C
GOTO Label_0074
BSF 0x39,5
CALL Label_0067
CLRF 0x30
GOTO Label_0075
Label_006D MOVLW 0x30
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_006E
MOVLW 0x10
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_006F
MOVLW 0x00
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0070
MOVLW 0x40
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0071
MOVLW 0x60
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0072
MOVLW 0x70
SUBWF 0x35,0
BTFSC STATUS,Z
GOTO Label_0073
GOTO Label_0076
Label_006F MOVLW 0x30
BTFSC 0x37,7
MOVLW 0x10
MOVWF 0x34
MOVLW 0x28
MOVWF 0x32;;;;;;;;;;(32H)=28对应011状态B口输出28H
GOTO Label_0077
Label_0070 MOVLW 0x20
BTFSC 0x37,7
MOVLW 0x00
MOVWF 0x34
MOVLW 0x30
MOVWF 0x32;;;;;;;;;;(32H)=30对应001状态B口输出30H
GOTO Label_0077
Label_0071 MOVLW 0x60
BTFSC 0x37,7
MOVLW 0x40
MOVWF 0x34
MOVLW 0x50
MOVWF 0x32;;;;;;;;;;(32H)=50对应101状态B口输出50H
GOTO Label_0077
Label_0072 MOVLW 0x40
BTFSC 0x37,7
MOVLW 0x60
MOVWF 0x34
MOVLW 0x44
MOVWF 0x32;;;;;;;;;;(32H)=44对应100状态B口输出44H
GOTO Label_0077
Label_0073 MOVLW 0x50
BTFSC 0x37,7
MOVLW 0x70
MOVWF 0x34
MOVLW 0x84
MOVWF 0x32;;;;;;;;;;(32H)=84对应110状态B口输出84H
GOTO Label_0077
Label_006E MOVLW 0x10
BTFSC 0x37,7
MOVLW 0x30
MOVWF 0x34
MOVLW 0x88
MOVWF 0x32;;;;;;;;;;(32H)=88对应010状态B口输出88H
Label_0077 BTFSS 0x38,1
GOTO Label_0078
BTFSS 0x38,3
GOTO Label_0079
BCF 0x38,1
BCF 0x38,3
RETURN
Label_0079 BSF 0x38,3
MOVLW 0x02
SUBWF 0x3C,1
BTFSC STATUS,C
GOTO Label_007A
CLRF 0x3C
GOTO Label_007A
;-----选择相应的通道采集AD--------------------------------
Label_00B0 BTFSC INTCON,INTF
GOTO Label_007B
BTFSC 0x3A,3
GOTO Label_007C ;电流
BTFSC 0x3A,1
GOTO Label_007D ;刹车
BTFSC 0x3A,2
GOTO Label_007E ;电池
BTFSC 0x3A,0
GOTO Label_007F ;转把
GOTO Label_0078
Label_007F BTFSS 0x39,0
GOTO Label_0080
CALL Label_0081
MOVF 0x35,0
SUBWF 0x40,0
BTFSS STATUS,Z
GOTO Label_0082
Label_0080 BTFSC INTCON,INTF
CALL Label_0083
BTFSC 0x1F,2
GOTO Label_0080
MOVF 0x1E,0
ADDWF 0x67,1
RRF 0x67,1
;**********************
;MOVLW 0X20
;MOVWF 0X67
;**********************
GOTO Label_0078
Label_007E BTFSS 0x39,0
GOTO Label_0084
CALL Label_0081
MOVF 0x35,0
SUBWF 0x40,0
BTFSS STATUS,Z
GOTO Label_0082
Label_0084 BTFSC INTCON,INTF
CALL Label_0083
BTFSC 0x1F,2
GOTO Label_0084
MOVF 0x1E,0
ADDWF 0x66,1
RRF 0x66,1
;****************
;MOVLW 0XA0
;MOVWF 0X66
;****************
GOTO Label_0078
Label_007D BTFSS 0x39,0
GOTO Label_0085
CALL Label_0081
MOVF 0x35,0
SUBWF 0x40,0
BTFSS STATUS,Z
GOTO Label_0082
Label_0085 BTFSC INTCON,INTF
CALL Label_0083
BTFSC 0x1F,2
GOTO Label_0085
MOVF 0x1E,0
ADDWF 0x65,1
RRF 0x65,1
;**************
;MOVLW 0X00
; MOVWF 0X65
;***************
BTFSC 0x39,3
GOTO Label_0086
BTFSC 0x38,2
GOTO Label_0086
BTFSC 0x37,5
GOTO Label_0087
MOVF 0x65,0
SUBLW 0x70
BTFSC STATUS,C
GOTO Label_0086
BCF 0x38,7
GOTO Label_0078
Label_0087 MOVLW 0x66
SUBWF 0x65,0
BTFSC STATUS,C
GOTO Label_0086
BCF 0x38,7
GOTO Label_0078
Label_0086 BCF 0x38,4
BSF 0x38,7
GOTO Label_0078
Label_0097 BTFSS 0x39,2
GOTO Label_0088
BTFSC 0x37,0
GOTO Label_0089
BTFSC 0x37,2
GOTO Label_008A
BSF STATUS,RP0
MOVLW 0x7F
MOVWF 0x12
BCF STATUS,RP0
MOVLW 0x03
ADDWF TMR0,0
MOVWF 0x3E
BCF STATUS,C
RRF 0x3E,0
MOVWF 0x11
Label_008A BSF 0x37,2
BTFSC 0x39,3
GOTO Label_0078
MOVF 0x64,0
SUBLW 0x02
BTFSS STATUS,C
GOTO Label_008B
MOVF 0x63,0
SUBLW 0x02
BTFSS STATUS,C
GOTO Label_008B
MOVF 0x64,1
BTFSS STATUS,Z
GOTO Label_008C
MOVF 0x63,1
BTFSS STATUS,Z
GOTO Label_008C
MOVF 0x62 , W
SUBLW 0x90
BTFSS STATUS,C
GOTO Label_008C
MOVF 0x61,0
SUBLW 0x90
BTFSS STATUS,C
GOTO Label_008C
BTFSC 0x37,3
GOTO Label_0078
MOVF 0x66,0
SUBLW 0xF8
BTFSC STATUS,C
GOTO Label_008D
Label_0089 BSF STATUS,RP0
BSF TRISB,1
BCF STATUS,RP0
CLRF 0x30
BSF 0x37,0
GOTO Label_008E
Label_008D MOVLW 0x1C
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_008F
BTFSC 0x38,6
CALL Label_0022
MOVLW 0x1B
MOVWF 0x30
BSF STATUS,RP0
BCF TRISB,1
BCF STATUS,RP0
BCF PORTB,1
MOVF 0x68,0
SUBWF 0x47,0
BTFSS STATUS,C
GOTO Label_0090
DECF 0x6B,1
BTFSC STATUS,Z
INCF 0x6B,1
MOVF 0x68,0
SUBWF 0x46,0
BTFSS STATUS,C
GOTO Label_008E
GOTO Label_0091
Label_0090 INCF 0x6B,1
MOVF 0x68,0
SUBWF 0x48,0
BTFSC STATUS,C
GOTO Label_0092
MOVLW 0x06
ADDWF 0x6B,1
BTFSC STATUS,C
GOTO Label_0093
Label_0092 MOVF 0x6B,0
SUBLW 0xF0
BTFSC STATUS,C
GOTO Label_008E
Label_0093 BSF 0x37,3 ;DU ZHUAN
CLRF 0x30
GOTO Label_008E
Label_008C BTFSC 0x38,6
CALL Label_0022
BSF STATUS,RP0
BCF TRISB,1
BCF STATUS,RP0
BCF PORTB,1
BSF 0x37,3
CLRF 0x30
GOTO Label_008E
Label_008B BSF 0x39,3
BSF STATUS,RP0
BSF TRISB,1
BCF STATUS,RP0
CLRF 0x30
MOVF PORTB,0
ANDLW 0x03
MOVWF PORTB
BSF 0x38,6
CLRF 0x6B
GOTO Label_008E
Label_008F BSF STATUS,RP0
BCF TRISB,1
BCF STATUS,RP0
BCF PORTB,1
DECF 0x6B,1
BTFSC STATUS,Z
INCF 0x6B,1
MOVF 0x61,0
SUBLW 0x02
BTFSC STATUS,C
GOTO Label_008E
MOVF 0x68,0
SUBWF 0x46,0
BTFSC STATUS,C
GOTO Label_0091
MOVLW 0x04
SUBWF 0x30,0
MOVWF 0x30
SUBLW 0x1C
BTFSS STATUS,C
GOTO Label_008E
MOVLW 0x1B
MOVWF 0x30
GOTO Label_008E
Label_0091 MOVLW 0x06
ADDWF 0x30,1
BTFSS STATUS,C
GOTO Label_008E
MOVLW 0xFF
MOVWF 0x30
GOTO Label_008E
Label_007C BTFSS 0x39,0
GOTO Label_0094
CALL Label_0081
MOVF 0x35,0
SUBWF 0x40,0
BTFSS STATUS,Z
GOTO Label_0082
Label_0094 BTFSC INTCON,INTF
CALL Label_0083
BTFSC 0x1F,2
GOTO Label_0094
MOVF 0x1E,0
ADDWF 0x68,1
RRF 0x68,1
MOVF 0X68,0
MOVWF 0X5F
BTFSC 0x38,5;;;;;;;;;;;;;;;RB1=0,BIAIZHIWEI
GOTO Label_0095
BTFSC 0x39,5;;;;;;;;;;;;;;NO HALL
GOTO Label_0096
BTFSC 0x36,6
GOTO Label_0095
BTFSC 0x37,4
GOTO Label_0097
Label_0088 BCF 0x37,2
CLRF 0x6B
BTFSC 0x38,7
GOTO Label_0098
MOVF 0x31,1
BTFSC STATUS,Z
GOTO Label_0099
BTFSC 0x38,6
Label_0099 CALL Label_0022
MOVF 0x48,0
SUBWF 0x68,0
BTFSC STATUS,C
GOTO Label_009A
CLRF 0x60
BSF STATUS,RP0
BSF TRISB,1
BCF STATUS,RP0
GOTO Label_009B
Label_009A MOVWF 0x60
BSF STATUS,RP0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -