📄 test2407.asm
字号:
ZALS *
SUBK 8
BGEZ L17
L16:
.line 136
;>>>> if(comarr[i] != ReadArr[i])
LAC * ,AR0
ADLK _ReadArr+0,0
SACL *
LAR AR3,* ,AR2
LAR AR4,* ,AR4
MAR *0+
ADRK 8
LAC * ,AR3
SUB *
BZ L18
.line 137
;>>>> wr_flag = 0x1;
LACK 1
MAR * ,AR2
SBRK 6
SACL *
L18:
.line 134
MAR * ,AR2
LARK AR2,7
MAR *0+
LAC *
ADDK 1
SACL *
ZALS *
SUBK 8
BLZ L16
L17:
.line 139
;>>>> if(wr_flag == 0x1)
SBRK 6
LAC *
SUBK 1
BNZ L19
.line 141
;>>>> EEPROM_LC256(ReadArr,0x100,0x00A0,8);
MAR * ,AR1
LACK 8
SACL *+
LACK 160
SACL *+
LACK 256
SACL *+
LALK _ReadArr+0
SACL *+
CALL _EEPROM_LC256
SBRK 4
.line 142
;>>>> wr_flag = 0;
;>>>> //
LACK 0
MAR * ,AR2
LARK AR2,1
MAR *0+
SACL *
L19:
.line 145
;>>>> uipreangle = (unsigned int)(ReadPara(0x100,8));
MAR * ,AR1
LACK 8
SACL *+
LACK 256
SACL *+
CALL _ReadPara
SBRK 2
LDPK _uipreangle
SACL _uipreangle
.line 146
;>>>> SetQep(uipreangle);
BLKD _uipreangle+0,*+
CALL _SetQep
MAR *-
.line 147
;>>>> cParaNo = 0xff;
LACK 255
LDPK _cParaNo
SACL _cParaNo
L15:
.line 149
;>>>> if(cParaNo == 0x41)
;>>>> //reset the autoup para
SSXM
LAC _cParaNo
SUBK 65
BNZ L20
.line 152
;>>>> EEPROM_LC256(ReadArr,0x200,0x00A0,8);
LACK 8
SACL *+
LACK 160
SACL *+
LACK 512
SACL *+
LALK _ReadArr+0
SACL *+
CALL _EEPROM_LC256
SBRK 4
.line 153
;>>>> ulAutoUpPara = ReadPara(0x200,8);
LACK 8
SACL *+
LACK 512
SACL *+
CALL _ReadPara
SBRK 2
LDPK _ulAutoUpPara
SACL _ulAutoUpPara
SACH _ulAutoUpPara+1
.line 154
;>>>> uiAutoUpPara4 = (unsigned int)(ulAutoUpPara%100/2);
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$MODU
RSXM
SFR
SACL _uiAutoUpPara4
.line 155
;>>>> ulAutoUpPara = ulAutoUpPara/100;
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$DIVU
SACL _ulAutoUpPara
SACH _ulAutoUpPara+1
.line 156
;>>>> uiAutoUpPara3 = (unsigned int)(ulAutoUpPara%100/2);
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$MODU
RSXM
SFR
SACL _uiAutoUpPara3
.line 157
;>>>> ulAutoUpPara = ulAutoUpPara/100;
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$DIVU
SACL _ulAutoUpPara
SACH _ulAutoUpPara+1
.line 158
;>>>> uiAutoUpPara2 = (unsigned int)(ulAutoUpPara%100/2);
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$MODU
RSXM
SFR
SACL _uiAutoUpPara2
.line 159
;>>>> ulAutoUpPara = ulAutoUpPara/100;
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$DIVU
SACL _ulAutoUpPara
SACH _ulAutoUpPara+1
.line 160
;>>>> uiAutoUpPara1 = (unsigned int)(ulAutoUpPara%100/2);
LACK 100
SACL *+
SACH *+
ZALS _ulAutoUpPara
ADDH _ulAutoUpPara+1
CALL L$$MODU
RSXM
SFR
SACL _uiAutoUpPara1
.line 162
;>>>> cParaNo = 0xff;
LACK 255
LDPK _cParaNo
SACL _cParaNo
L20:
.line 164
;>>>> if((Encode_counter & 0xffff) < 0x7fff)
LDPK _Encode_counter
ZALS _Encode_counter
ANDK 65535
MAR * ,AR2
LARK AR2,18
MAR *0+
SACL *+
SACH *-
LT *+
MPYK 1
LPH *
LACK 32767
SPAC
BNC L21
BZ L21
.line 166
;>>>> Maxest_counter = MaxerQep();
;>>>> else
CALL _MaxerQep,AR1
LDPK _Maxest_counter
SACL _Maxest_counter
SACH _Maxest_counter+1
B L22
L21:
.line 170
;>>>> Maxer_counter = 0;
;>>>> // t_sci=test_sci();
LACK 0
SACL _Maxer_counter
SACH _Maxer_counter+1
L22:
.line 173
;>>>> delay(140);
MAR * ,AR1
LACK 140
SACL *+
CALL _delay
MAR *-,AR2
.line 174
;>>>> if((Encode_counter & 0xffff) < 0x7fff)
LDPK _Encode_counter
ZALS _Encode_counter
ANDK 65535
LARK AR2,18
MAR *0+
SACL *+
SACH *-
LT *+
MPYK 1
LPH *
LACK 32767
SPAC
BNC L23
BZ L23
.line 176
;>>>> Maxest_counter = MaxerQep();
;>>>> else
CALL _MaxerQep,AR1
LDPK _Maxest_counter
SACL _Maxest_counter
SACH _Maxest_counter+1
B L24
L23:
.line 180
;>>>> Maxer_counter = 0;
LACK 0
SACL _Maxer_counter
SACH _Maxer_counter+1
L24:
.line 182
;>>>> delay(300);
;>>>> //if(t_sci==0)LEDflash(0x00fb);
;>>>> //----------------------------
MAR * ,AR1
LACK 300
SACL *+
CALL _delay
MAR *-
.line 188
B L3
.endfunc 265,000000000H,20
.sym _operation,_operation,36,2,0
.globl _operation
.func 269
;>>>> int operation()
******************************************************
* FUNCTION DEF : _operation
******************************************************
_operation:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
;>>>> if((ucinput[0] == 0x1) || (pc_qubai ==0x1) || (auto_qubai == 0x1))
LDPK _ucinput
LAC _ucinput
SUBK 1
BZ LL6
SSXM
LDPK _pc_qubai
LAC _pc_qubai
SUBK 1
BZ LL6
LDPK _auto_qubai
LAC _auto_qubai
SUBK 1
BNZ L25
LL6:
.line 5
;>>>> outputbuf = outputbuf & 0xfffe;
LACK 65534
LDPK _outputbuf
AND _outputbuf
SACL _outputbuf
.line 6
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h,AR1
.line 7
;>>>> delay(0x1ff);
LACK 511
SACL *+
CALL _delay
MAR *-
.line 8
;>>>> pc_qubai = 0x0;
LACK 0
LDPK _pc_qubai
SACL _pc_qubai
.line 9
;>>>> autoUp_flag = 0x0;
LDPK _autoUp_flag
SACL _autoUp_flag
.line 10
;>>>> auto_qubai = 0x0;
LDPK _auto_qubai
SACL _auto_qubai
L25:
.line 12
;>>>> if((ucinput[0] == 0x0) && (pc_qubai ==0x0))
LDPK _ucinput
LAC _ucinput
BNZ L26
SSXM
LDPK _pc_qubai
LAC _pc_qubai
BNZ L26
.line 14
;>>>> outputbuf = outputbuf | 0x0001;
LACK 1
OR _outputbuf
SACL _outputbuf
.line 15
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h
L26:
.line 18
;>>>> if((ucinput[1] == 0x1) || (pc_tuixiao ==0x1))
LDPK _ucinput+1
LAC _ucinput+1
SUBK 1
BZ LL7
SSXM
LDPK _pc_tuixiao
LAC _pc_tuixiao
SUBK 1
BNZ L27
LL7:
.line 20
;>>>> outputbuf = outputbuf & 0xfffd;
LACK 65533
LDPK _outputbuf
AND _outputbuf
SACL _outputbuf
.line 21
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h,AR1
.line 22
;>>>> delay(0x1ff);
LACK 511
SACL *+
CALL _delay
MAR *-
.line 23
;>>>> pc_tuixiao = 0x0;
LACK 0
LDPK _pc_tuixiao
SACL _pc_tuixiao
L27:
.line 25
;>>>> if((ucinput[1] == 0x0) && (pc_tuixiao ==0x0))
LDPK _ucinput+1
LAC _ucinput+1
BNZ L28
SSXM
LDPK _pc_tuixiao
LAC _pc_tuixiao
BNZ L28
.line 27
;>>>> outputbuf = outputbuf | 0x0002;
LACK 2
OR _outputbuf
SACL _outputbuf
.line 28
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h
L28:
.line 30
;>>>> if((ucinput[2] == 0x1) || (pc_impact ==0x1) && (ucinput[6] == 0x0))
LDPK _ucinput+2
LAC _ucinput+2
SUBK 1
BZ LL8
SSXM
LDPK _pc_impact
LAC _pc_impact
SUBK 1
BNZ L29
LDPK _ucinput+6
LAC _ucinput+6
BNZ L29
LL8:
.line 32
;>>>> outputbuf = outputbuf & 0xffef;//
LACK 65519
LDPK _outputbuf
AND _outputbuf
SACL _outputbuf
.line 33
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h,AR1
.line 34
;>>>> delay(0x2ff);
LACK 767
SACL *+
CALL _delay
MAR *-
.line 35
;>>>> pc_impact = 0x0;
LACK 0
LDPK _pc_impact
SACL _pc_impact
L29:
.line 37
;>>>> if((ucinput[2] == 0x0) && (pc_impact ==0x0))
LDPK _ucinput+2
LAC _ucinput+2
BNZ L30
SSXM
LDPK _pc_impact
LAC _pc_impact
BNZ L30
.line 39
;>>>> outputbuf = outputbuf | 0x0010;
LACK 16
OR _outputbuf
SACL _outputbuf
.line 40
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h
L30:
.line 42
;>>>> if((ucinput[3] == 0x1) || (pc_fangbai ==0x1))
LDPK _ucinput+3
LAC _ucinput+3
SUBK 1
BZ LL9
SSXM
LDPK _pc_fangbai
LAC _pc_fangbai
SUBK 1
BNZ L31
LL9:
.line 44
;>>>> outputbuf = outputbuf & 0xffdf;
LACK 65503
LDPK _outputbuf
AND _outputbuf
SACL _outputbuf
.line 45
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h,AR1
.line 46
;>>>> delay(0x1ff);
;>>>> // pc_fangbai = 0x0;
LACK 511
SACL *+
CALL _delay
MAR *-
L31:
.line 49
;>>>> if((ucinput[3] == 0x0) && (pc_fangbai ==0x0))
LDPK _ucinput+3
LAC _ucinput+3
BNZ L32
SSXM
LDPK _pc_fangbai
LAC _pc_fangbai
BNZ L32
.line 51
;>>>> outputbuf = outputbuf | 0x002f;
LACK 47
OR _outputbuf
SACL _outputbuf
.line 52
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h
L32:
.line 55
;>>>> if(test = 0)
LACK 0
LDPK _test
SACL _test
BZ L33
.line 57
;>>>> outputbuf = outputbuf & 0xffdf;
LACK 65503
AND _outputbuf
SACL _outputbuf
.line 58
;>>>> OUTPUT = outputbuf;
;>>>> // delay(0x1ff);
;>>>> // pc_fangbai = 0x0;
MAR * ,AR0
SACL *
OUT * ,02000h
L33:
.line 62
;>>>> if(test = 1)
LACK 1
SACL _test
BZ L34
.line 64
;>>>> outputbuf = outputbuf | 0x002f;
LACK 47
OR _outputbuf
SACL _outputbuf
.line 65
;>>>> OUTPUT = outputbuf;
MAR * ,AR0
SACL *
OUT * ,02000h
L34:
EPI0_4:
.line 70
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 338,000000000H,1
.sym _int111,_int111,32,2,0
.globl _int111
.func 343
;>>>> void interrupt int111()
;>>>> switch( *PIVR)
******************************************************
* FUNCTION DEF : _int111
******************************************************
_int111:
CALL I$$SAVE
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
B L35
L36:
.line 5
;>>>> case 6: UartRec();
CALL _UartRec,AR1
.line 6
;>>>> break;
B L37
L38:
.line 7
;>>>> case 7: UartSent();
CALL _UartSent,AR1
.line 8
;>>>> break;
B L37
L39:
.line 9
;>>>> default : enable_int() ;
;>>>> // return;
CALL _enable_int,AR1
B L37
L35:
.line 3
LARK AR3,28702
MAR * ,AR3
ZALS *
SUBK 6
BZ L36
SUBK 1
BZ L38
B L39
L37:
EPI0_5:
.line 12
SBRK 1
B I$$REST,AR1 ;and return
.endfunc 354,000000000H,1
.sym _UartSent,_UartSent,32,2,0
.globl _UartSent
.func 356
;>>>> void UartSent()
******************************************************
* FUNCTION DEF : _UartSent
******************************************************
_UartSent:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR3
.line 3
;>>>> *IFR = 0xffff;
LARK AR3,6
SPLK #65535,* ,AR1
.line 4
;>>>> enable_int();
;>>>> // return;
CALL _enable_int
EPI0_6:
.line 6
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 361,000000000H,1
.sym _nothing,_nothing,32,2,0
.globl _nothing
.func 364
;>>>> void interrupt nothing()
******************************************************
* FUNCTION DEF : _nothing
******************************************************
_nothing:
CALL I$$SAVE
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR3
.line 3
;>>>> *IFR = 0xffff;
LARK AR3,6
SPLK #65535,* ,AR1
.line 4
;>>>> enable_int();
;>>>> // return;
CALL _enable_int
EPI0_7:
.line 6
SBRK 1
B I$$REST,AR1 ;and return
.endfunc 369,000000000H,1
.sym _pc_qubai,_pc_qubai,2,2,16
.globl _pc_qubai
.sym _uiAutoUpPara1,_uiAutoUpPara1,14,2,16
.globl _uiAutoUpPara1
.sym _uiAutoUpPara2,_uiAutoUpPara2,14,2,16
.globl _uiAutoUpPara2
.sym _uiAutoUpPara3,_uiAutoUpPara3,14,2,16
.globl _uiAutoUpPara3
.sym _uiAutoUpPara4,_uiAutoUpPara4,14,2,16
.globl _uiAutoUpPara4
.sym _SciRecBuf,_SciRecBuf,60,2,480,,30
.globl _SciRecBuf
.sym _key_code,_key_code,4,2,16
.globl _key_code
.sym _pc_tuixiao,_pc_tuixiao,2,2,16
.globl _pc_tuixiao
.sym _pc_fangbai,_pc_fangbai,2,2,16
.globl _pc_fangbai
.sym _ulAutoUpPara,_ulAutoUpPara,15,2,32
.globl _ulAutoUpPara
.sym _read_flag,_read_flag,14,2,16
.globl _read_flag
.sym _Maxest_counter,_Maxest_counter,15,2,32
.globl _Maxest_counter
.sym _uipreangle,_uipreangle,14,2,16
.globl _uipreangle
.sym _Encode_counter,_Encode_counter,15,2,32
.globl _Encode_counter
.sym _outputbuf,_outputbuf,14,2,16
.globl _outputbuf
.sym _pc_impact,_pc_impact,2,2,16
.globl _pc_impact
.sym _ucSq,_ucSq,12,2,16
.globl _ucSq
*****************************************************
* UNDEFINED REFERENCES *
*****************************************************
.global _delay
.global _ReadPara
.global L$$MODU
.global L$$DIVU
.global _sci_init
.global _QEPINIT
.global _MaxerQep
.global _keyscan
.global _SetQep
.global _AutoUp
.global _EEPROM_LC256
.global _DspAckSci
.global _UartRec
.global I$$SAVE
.global I$$REST
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -