📄 main.asm
字号:
[bp+6]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,79,',0,0
.dd LM20-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM20:
LBB2:
.debug
.dw '.stabn 0x44,0,84,',0,0
.dd LM21-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM21:
R1=[_uiSPWM_phases_Add] // QImode move
R2=[_uiPhases_Temp] // QImode move
[_uiSPWM_phases_Add]=R1+R2 //addqi3_Qrr
.debug
.dw '.stabn 0x44,0,85,',0,0
.dd LM22-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM22:
R1=[_uiSPWM_phases_Add] // QImode move
CMP R1,(-7937) // QImode compare
NSJNA L9 //QImode LEU
.debug
.dw '.stabn 0x44,0,86,',0,0
.dd LM23-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM23:
R1=[_uiSPWM_phases_Add] // QImode move
R2=7936 // QImode move
[_uiSPWM_phases_Add]=R1+R2 //addqi3_Qrr
L9:
.debug
.dw '.stabn 0x44,0,88,',0,0
.dd LM24-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM24:
R1=[_uiSPWM_phases_Add] // QImode move
R2=R1 lsr 2
R2=R2 lsr 4
[BP]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,89,',0,0
.dd LM25-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM25:
R2=BP // QImode move
R1=BP+1
R2=[BP] // QImode move
R3=R2+300
R2=R1 // QImode move
[R2]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,90,',0,0
.dd LM26-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM26:
R1=BP // QImode move
R2=BP+1
R3=R2 // QImode move
R1=[R3] // QImode move
CMP R1,899 // QImode compare
NSJNA L10 //QImode LEU
R2=BP // QImode move
R1=BP+1
R2=BP // QImode move
R3=BP+1
R4=R3 // QImode move
R2=[R4] // QImode move
R3=R2+(-900)
R2=R1 // QImode move
[R2]=R3 // QImode move
L10:
.debug
.dw '.stabn 0x44,0,91,',0,0
.dd LM27-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM27:
R2=BP // QImode move
R1=BP+2
R2=[BP] // QImode move
R3=R2+600
R4=R1 // QImode move
[R4]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,92,',0,0
.dd LM28-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM28:
R1=BP // QImode move
R2=BP+2
R3=R2 // QImode move
R1=[R3] // QImode move
CMP R1,899 // QImode compare
NSJNA L11 //QImode LEU
R2=BP // QImode move
R1=BP+2
R2=BP // QImode move
R3=BP+2
R4=R3 // QImode move
R2=[R4] // QImode move
R3=R2+(-900)
R2=R1 // QImode move
[R2]=R3 // QImode move
L11:
.debug
.dw '.stabn 0x44,0,94,',0,0
.dd LM29-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM29:
R2=BP // QImode move
R1=BP+3
R2=_iSin_TAB // QImode move
R3=[BP] // QImode move
R2 = R2 + R3 //addqi3
R4=R2 // QImode move
R3=[R4] // QImode move
R2=R1 // QImode move
[R2]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,95,',0,0
.dd LM30-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM30:
R1=BP // QImode move
R3=BP+3
R2=R3 // QImode move
R1=R3+1
R2=BP // QImode move
R3=BP+1
R2=_iSin_TAB // QImode move
R4=R3 // QImode move
R3=[R4] // QImode move
R2 = R2 + R3 //addqi3
R4=R2 // QImode move
R3=[R4] // QImode move
R2=R1 // QImode move
[R2]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,96,',0,0
.dd LM31-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM31:
R1=BP // QImode move
R3=BP+3
R2=R3 // QImode move
R1=R3+2
R2=BP // QImode move
R3=BP+2
R2=_iSin_TAB // QImode move
R4=R3 // QImode move
R3=[R4] // QImode move
R2 = R2 + R3 //addqi3
R4=R2 // QImode move
R3=[R4] // QImode move
R2=R1 // QImode move
[R2]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,98,',0,0
.dd LM32-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM32:
R1=[_SET_V] // QImode move
[SP--]=R1 // QImode move
R1=BP+3
[SP--]=R1 // QImode move
call _SPWM_AM_MUL // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,101,',0,0
.dd LM33-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM33:
R1=BP // QImode move
R2=BP+3
R3=R2 // QImode move
R1=[R3] // QImode move
R2=R1 lsr 2
R2=R2 lsr 4
[29772]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,102,',0,0
.dd LM34-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM34:
R1=BP // QImode move
R2=BP+3
R1=R2 // QImode move
R2=R2+1
R4=R2 // QImode move
R1=[R4] // QImode move
R2=R1 lsr 2
R2=R2 lsr 4
[29773]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,103,',0,0
.dd LM35-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM35:
R1=BP // QImode move
R2=BP+3
R1=R2 // QImode move
R2=R2+2
R3=R2 // QImode move
R1=[R3] // QImode move
R2=R1 lsr 2
R2=R2 lsr 4
[29774]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,105,',0,0
.dd LM36-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM36:
R1=[29706] // QImode move
R2=R1|170
[29706]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,106,',0,0
.dd LM37-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM37:
LBE2:
.debug
.dw '.stabn 0x44,0,106,',0,0
.dd LM38-_SPWM_ISR
.dw 0x0d,0x0a
.code
LM38:
L8:
sp+=7
pop bp from [sp]
retf
.endp // end of SPWM_ISR
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB2-_SPWM_ISR
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "uiSPWM_phases_Add_U:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "uiSPWM_phases_Add_V:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabs "uiSPWM_phases_Add_W:4",128,0,0,2',0x0d,0x0a
.CODE
.debug
.dw '.stabs "iNEW_Data:264=ar1;0;2;4",128,0,0,3',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE2-_SPWM_ISR
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME4-_SPWM_ISR
.dw 0x0d,0x0a
.code
LME4:
// ISR ATTRIBUTE FUNCTION, LOCATE in .text SECTION
.text
.debug
.dw '.stabs "IRQ3:F19",36,0,0,',0,0,offset _IRQ3,seg _IRQ3,0x0d,0x0a
.TEXT
.public _IRQ3
_IRQ3: .proc
.debug
.dw '.stabn 0x44,0,112,',0,0
.dd LM39-_IRQ3
.dw 0x0d,0x0a
.text
LM39:
// ISR ATTRIBUTE FUNCTION, PUSH r1,bp
push r1,bp to [sp]
// total=1, vars=1
// frame_pointer_needed: 1
sp-=1
bp=sp+1
R1=BP+4
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,113,',0,0
.dd LM40-_IRQ3
.dw 0x0d,0x0a
.text
LM40:
R2=[29737] // QImode move
R1=R2 lsr 4
R2=R1&1
CMP R2,0 // QImode test
NSJZ L16 //QImode EQ
.debug
.dw '.stabn 0x44,0,115,',0,0
.dd LM41-_IRQ3
.dw 0x0d,0x0a
.text
LM41:
call _SPWM_ISR // call without return value
.debug
.dw '.stabn 0x44,0,116,',0,0
.dd LM42-_IRQ3
.dw 0x0d,0x0a
.text
LM42:
R1=[29737] // QImode move
R2=R1|16
[29737]=R2 // QImode move
L16:
.debug
.dw '.stabn 0x44,0,118,',0,0
.dd LM43-_IRQ3
.dw 0x0d,0x0a
.text
LM43:
.debug
.dw '.stabn 0x44,0,118,',0,0
.dd LM44-_IRQ3
.dw 0x0d,0x0a
.text
LM44:
L15:
sp+=1
// ISR ATTRIBUTE FUNCTION, POP r1,bp
pop r1,bp from [sp]
reti
.endp // end of IRQ3
.debug
.dw '.stabf ',0,0
.dd LME5-_IRQ3
.dw 0x0d,0x0a
.text
LME5:
.iram
_uiSPWM_phases_Add:
.dw 0
.iram
_uiPhases_Temp:
.dw 0
.iram
_SET_F:
.dw 0
.iram
_SET_V:
.dw 0
.external _SPWM_AM_MUL
.external _iSin_TAB
.external _MCP4_T_PWM_init
.external _ASM_MUL
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -