📄 main.src
字号:
MOV A,j?344
SETB C
SUBB A,R7
JNC ?C0012
; if(Sampbuff[j]>Sampbuff[j+1])
; SOURCE LINE # 94
MOV A,j?344
ADD A,ACC
ADD A,ACC
ADD A,#LOW (Sampbuff+04H)
MOV R0,A
LCALL ?C?LLDIDATA
MOV A,j?344
ADD A,ACC
ADD A,ACC
ADD A,#LOW (Sampbuff)
MOV R0,A
LCALL ?C?LLDIDATA0
SETB C
LCALL ?C?ULCMP
JC ?C0015
; {
; SOURCE LINE # 95
; temp=Sampbuff[j];Sampbuff[j]=Sampbuff[j+1];Sampbuff[j+1]=temp;
; SOURCE LINE # 96
MOV A,j?344
ADD A,ACC
ADD A,ACC
ADD A,#LOW (Sampbuff)
MOV R0,A
LCALL ?C?LLDIDATA
MOV temp?345+03H,R7
MOV temp?345+02H,R6
MOV temp?345+01H,R5
MOV temp?345,R4
MOV A,j?344
ADD A,ACC
ADD A,ACC
ADD A,#LOW (Sampbuff+04H)
MOV R0,A
LCALL ?C?LLDIDATA
MOV A,j?344
ADD A,ACC
ADD A,ACC
ADD A,#LOW (Sampbuff)
MOV R0,A
LCALL ?C?LSTIDATA
MOV R7,temp?345+03H
MOV R6,temp?345+02H
MOV R5,temp?345+01H
MOV R4,temp?345
MOV A,j?344
ADD A,ACC
ADD A,ACC
ADD A,#LOW (Sampbuff+04H)
MOV R0,A
LCALL ?C?LSTIDATA
; }
; SOURCE LINE # 97
?C0015:
INC j?344
SJMP ?C0013
?C0012:
INC i?343
MOV A,i?343
XRL A,#02H
JNZ ?C0010
?C0011:
; if(Firstfilt)
; SOURCE LINE # 98
JNB Firstfilt,?C0017
; {
; SOURCE LINE # 99
; Firstfilt=0;
; SOURCE LINE # 100
CLR Firstfilt
; Firstint=0;
; SOURCE LINE # 101
; Filter_result=Sampbuff[1];
; SOURCE LINE # 102
; Last_samp_data=Sampbuff[1];
; SOURCE LINE # 103
; }
; SOURCE LINE # 104
SJMP ?C0032
?C0017:
; else if(-250<(Sampbuff[1]-Last_samp_data)<250)
; SOURCE LINE # 105
CLR C
MOV A,Sampbuff+07H
SUBB A,Last_samp_data+03H
MOV R7,A
MOV A,Sampbuff+06H
SUBB A,Last_samp_data+02H
MOV R6,A
MOV A,Sampbuff+05H
SUBB A,Last_samp_data+01H
MOV R5,A
MOV A,Sampbuff+04H
SUBB A,Last_samp_data
MOV R4,A
MOV A,#0FFH
MOV R3,#06H
MOV R2,A
MOV R1,A
MOV R0,A
CLR C
LCALL ?C?ULCMP
MOV R6,#00H
JNC ?C0020
MOV R7,#01H
SJMP ?C0021
?C0020:
MOV R7,#00H
?C0021:
CLR C
MOV A,R7
SUBB A,#0FAH
MOV A,R6
XRL A,#080H
SUBB A,#080H
JNC ?C0019
; {
; SOURCE LINE # 106
;
; Firstint=0;
; SOURCE LINE # 108
CLR Firstint
; Last_samp_data=Sampbuff[1];
; SOURCE LINE # 109
MOV Last_samp_data+03H,Sampbuff+07H
MOV Last_samp_data+02H,Sampbuff+06H
MOV Last_samp_data+01H,Sampbuff+05H
MOV Last_samp_data,Sampbuff+04H
; Filter_result=(Filter_result*9+Sampbuff[1])/10;
; SOURCE LINE # 110
CLR A
MOV R7,#09H
MOV R6,A
MOV R5,A
MOV R4,A
MOV R3,Filter_result+03H
MOV R2,Filter_result+02H
MOV R1,Filter_result+01H
MOV R0,Filter_result
LCALL ?C?LMUL
MOV A,R7
ADD A,Sampbuff+07H
MOV R7,A
MOV A,R6
ADDC A,Sampbuff+06H
MOV R6,A
MOV A,R5
ADDC A,Sampbuff+05H
MOV R5,A
MOV A,R4
ADDC A,Sampbuff+04H
MOV R4,A
CLR A
MOV R3,#0AH
MOV R2,A
MOV R1,A
MOV R0,A
LCALL ?C?ULDIV
MOV Filter_result+03H,R7
MOV Filter_result+02H,R6
MOV Filter_result+01H,R5
MOV Filter_result,R4
; }
; SOURCE LINE # 111
RET
?C0019:
; else
; {
; SOURCE LINE # 113
; if (Firstint)
; SOURCE LINE # 114
JNB Firstint,?C0023
; {
; SOURCE LINE # 115
; Firstint=0;
; SOURCE LINE # 116
?C0032:
CLR Firstint
; Filter_result=Sampbuff[1];
; SOURCE LINE # 117
MOV Filter_result+03H,Sampbuff+07H
MOV Filter_result+02H,Sampbuff+06H
MOV Filter_result+01H,Sampbuff+05H
MOV Filter_result,Sampbuff+04H
; Last_samp_data=Sampbuff[1];
; SOURCE LINE # 118
MOV Last_samp_data+03H,Sampbuff+07H
MOV Last_samp_data+02H,Sampbuff+06H
MOV Last_samp_data+01H,Sampbuff+05H
MOV Last_samp_data,Sampbuff+04H
; }
; SOURCE LINE # 119
RET
?C0023:
; else
; Firstint=1;
; SOURCE LINE # 121
SETB Firstint
; }
; SOURCE LINE # 122
;
; }
; SOURCE LINE # 124
?C0025:
RET
; END OF filter
;
;
; void data_manage()
RSEG ?PR?data_manage?MAIN
data_manage:
USING 0
; SOURCE LINE # 127
; {
; SOURCE LINE # 128
; ulong temp=184320000;
; SOURCE LINE # 129
;---- Variable 'temp?446' assigned to Register 'R4/R5/R6/R7' ----
MOV R7,#00H
MOV R6,#080H
MOV R5,#0FCH
MOV R4,#0AH
; Measure=temp/Filter_result;
; SOURCE LINE # 130
MOV R3,Filter_result+03H
MOV R2,Filter_result+02H
MOV R1,Filter_result+01H
MOV R0,Filter_result
LCALL ?C?ULDIV
MOV Measure+03H,R7
MOV Measure+02H,R6
MOV Measure+01H,R5
MOV Measure,R4
; }
; SOURCE LINE # 131
RET
; END OF data_manage
;
; void renovate_disp(ulong Measure)
RSEG ?PR?_renovate_disp?MAIN
_renovate_disp:
USING 0
; SOURCE LINE # 133
MOV Measure?547+03H,R7
MOV Measure?547+02H,R6
MOV Measure?547+01H,R5
MOV Measure?547,R4
; {
; SOURCE LINE # 134
; uint i=Measure;
; SOURCE LINE # 135
;---- Variable 'i?548' assigned to Register 'R2/R3' ----
XCH A,R3
MOV A,R7
XCH A,R3
XCH A,R2
MOV A,R6
XCH A,R2
; uchar temp[4];
; temp[0]=i/1000;
; SOURCE LINE # 137
MOV R4,#03H
MOV R5,#0E8H
LCALL ?C?UIDIV
MOV temp?549,R7
; temp[1]=(i-temp[0]*1000)/100;
; SOURCE LINE # 138
MOV R6,#00H
MOV R4,#03H
MOV R5,#0E8H
LCALL ?C?IMUL
CLR C
MOV A,R3
SUBB A,R7
MOV R7,A
MOV A,R2
SUBB A,R6
MOV R6,A
MOV R4,#00H
MOV R5,#064H
LCALL ?C?UIDIV
MOV temp?549+01H,R7
; temp[2]=(i-temp[0]*1000-temp[1]*100)/10;
; SOURCE LINE # 139
MOV R7,temp?549
MOV R6,#00H
MOV R4,#03H
MOV R5,#0E8H
LCALL ?C?IMUL
CLR C
MOV A,R3
SUBB A,R7
MOV R5,A
MOV A,R2
SUBB A,R6
MOV R4,A
MOV A,temp?549+01H
MOV B,#064H
MUL AB
MOV R7,A
CLR C
MOV A,R5
SUBB A,R7
MOV R7,A
MOV A,R4
SUBB A,B
MOV R6,A
MOV R4,#00H
MOV R5,#0AH
LCALL ?C?UIDIV
MOV temp?549+02H,R7
; temp[3]=i-temp[0]*1000-temp[1]*100-temp[2]*10;
; SOURCE LINE # 140
XCH A,R7
MOV A,R3
XCH A,R7
MOV A,temp?549
MOV B,#0E8H
MUL AB
MOV R6,A
CLR C
MOV A,R7
SUBB A,R6
MOV R7,A
MOV A,temp?549+01H
MOV B,#064H
MUL AB
MOV R6,A
CLR C
MOV A,R7
SUBB A,R6
MOV R7,A
MOV A,temp?549+02H
MOV B,#0AH
MUL AB
MOV R6,A
CLR C
MOV A,R7
SUBB A,R6
MOV temp?549+03H,A
; if (temp[0]==0)
; SOURCE LINE # 141
MOV A,temp?549
JNZ ?C0027
; {
; SOURCE LINE # 142
; temp[0]=43;
; SOURCE LINE # 143
MOV temp?549,#02BH
; }
; SOURCE LINE # 144
?C0027:
; Dispbuff[0]=temp[0];
; SOURCE LINE # 145
MOV Dispbuff,temp?549
; Dispbuff[1]=temp[1]+10;
; SOURCE LINE # 146
MOV A,temp?549+01H
ADD A,#0AH
MOV Dispbuff+01H,A
; Dispbuff[2]=temp[2];
; SOURCE LINE # 147
MOV Dispbuff+02H,temp?549+02H
; Dispbuff[3]=temp[3];
; SOURCE LINE # 148
MOV Dispbuff+03H,temp?549+03H
; }
; SOURCE LINE # 149
RET
; END OF _renovate_disp
;
; void main()
RSEG ?PR?main?MAIN
main:
USING 0
; SOURCE LINE # 151
; {
; SOURCE LINE # 152
; SP=0x5F;
; SOURCE LINE # 153
MOV SP,#05FH
; ini_sfr();
; SOURCE LINE # 154
LCALL ini_sfr
; disp_logo();
; SOURCE LINE # 155
LCALL disp_logo
?C0029:
;
; while(1)
; SOURCE LINE # 157
; {
; SOURCE LINE # 158
; samp();
; SOURCE LINE # 159
LCALL samp
; filter();
; SOURCE LINE # 160
LCALL filter
; data_manage();
; SOURCE LINE # 161
LCALL data_manage
; renovate_disp(Measure);
; SOURCE LINE # 162
MOV R7,Measure+03H
MOV R6,Measure+02H
MOV R5,Measure+01H
MOV R4,Measure
LCALL _renovate_disp
; }
; SOURCE LINE # 163
SJMP ?C0029
; END OF main
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -