⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 initial.asm

📁 用凌阳16位单片机SPMC75F2413A来控制无刷直流电动机的详细程序包
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	[28778]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,142,',0,0
	.dd LM41-_Timer_Fault_Init
	.dw 0x0d,0x0a
.code
LM41:
	R2=[28776]	// QImode move
	R3=R2|64
	[28776]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,143,',0,0
	.dd LM42-_Timer_Fault_Init
	.dw 0x0d,0x0a
.code
LM42:
	R2=[28801]	// QImode move
	R3=R2|64
	[28801]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,144,',0,0
	.dd LM43-_Timer_Fault_Init
	.dw 0x0d,0x0a
.code
LM43:
.debug
	.dw '.stabn 0x44,0,144,',0,0
	.dd LM44-_Timer_Fault_Init
	.dw 0x0d,0x0a
.code
LM44:
L4:

	pop bp from [sp]
	retf
	.endp	// end of Timer_Fault_Init

.debug
	.dw '.stabf ',0,0
	.dd LME3-_Timer_Fault_Init
	.dw 0x0d,0x0a
.code
LME3:
.code
.debug
	.dw '.stabs "Spmc75_CMT_Init:f19",36,0,0,',0,0,offset _Spmc75_CMT_Init,seg _Spmc75_CMT_Init,0x0d,0x0a
.CODE
_Spmc75_CMT_Init:	.proc
.debug
	.dw '.stabn 0x44,0,150,',0,0
	.dd LM45-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM45:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R1=BP+3
.debug
	.dw '.stabn 0x44,0,151,',0,0
	.dd LM46-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM46:
	R2=0	// QImode move
	[29952]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,153,',0,0
	.dd LM47-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM47:
	R2=0	// QImode move
	[29953]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,154,',0,0
	.dd LM48-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM48:
	R3=[29953]	// QImode move
	R2=R3&(-8)
	R2=R2|4
	[29953]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,155,',0,0
	.dd LM49-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM49:
	R2=[29953]	// QImode move
	R3=R2|64
	[29953]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,156,',0,0
	.dd LM50-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM50:
	R2=[29953]	// QImode move
	R3=R2|128
	[29953]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,158,',0,0
	.dd LM51-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM51:
	R2=2929	// QImode move
	[29968]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,166,',0,0
	.dd LM52-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM52:
	R2=[29952]	// QImode move
	R3=R2|1
	[29952]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,168,',0,0
	.dd LM53-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM53:
.debug
	.dw '.stabn 0x44,0,168,',0,0
	.dd LM54-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LM54:
L5:

	pop bp from [sp]
	retf
	.endp	// end of Spmc75_CMT_Init

.debug
	.dw '.stabf ',0,0
	.dd LME4-_Spmc75_CMT_Init
	.dw 0x0d,0x0a
.code
LME4:
.code
.debug
	.dw '.stabs "IncPIDInit:f19",36,0,0,',0,0,offset _IncPIDInit,seg _IncPIDInit,0x0d,0x0a
.CODE
_IncPIDInit:	.proc
.debug
	.dw '.stabn 0x44,0,174,',0,0
	.dd LM55-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM55:
	// total=7, vars=7
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=7
	bp=sp+1

	R1=BP+10
.debug
	.dw '.stabn 0x44,0,175,',0,0
	.dd LM56-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM56:
	R3=[_sptr]	// QImode move
	R2=R3	// QImode move
	R3=R3+1
	R2=50	// QImode move
	R4=R3	// QImode move
	[R4]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,176,',0,0
	.dd LM57-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM57:
	R3=[_sptr]	// QImode move
	R2=R3	// QImode move
	R3=R3+8
	R2=0	// QImode move
	R4=R3	// QImode move
	[R4]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,177,',0,0
	.dd LM58-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM58:
	R3=[_sptr]	// QImode move
	R2=R3	// QImode move
	R3=R3+9
	R2=0	// QImode move
	R4=R3	// QImode move
	[R4]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,179,',0,0
	.dd LM59-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM59:
	R3=[_sptr]	// QImode move
	R2=R3	// QImode move
	R2=R3+2
	[bp+6]=R2	// QImode move
	R3=52429	// HFmode immediate to register move
	R4=16028
	[BP++]=R3	// [RD]=RS HFmode, RD!=RS+1
	[BP--]=R4
	R3=[BP++]	// RD=[RS] HFmode, RD!=RS
	R4=[BP--]
	R2=[bp+6]	// QImode move
	[R2]=R3	// [RD]=RS HFmode, RD=RS+1
	PUSH BP TO [SP]
	BP=R2
	[BP+1]=R4
	POP BP FROM [SP]
.debug
	.dw '.stabn 0x44,0,180,',0,0
	.dd LM60-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM60:
	R3=[_sptr]	// QImode move
	R2=R3	// QImode move
	R4=R3+4
	[bp+6]=R4	// QImode move
	R3=0	// HFmode immediate to register move
	R4=16096
	[bp+2]=R3	// HFmode [BP+#IM6]=RS
	[bp+3]=R4
	R3=[bp+2]	// HFmode RD=[BP+#IM6]
	R4=[bp+3]
	R2=[bp+6]	// QImode move
	[R2]=R3	// [RD]=RS HFmode, RD=RS+1
	PUSH BP TO [SP]
	BP=R2
	[BP+1]=R4
	POP BP FROM [SP]
.debug
	.dw '.stabn 0x44,0,181,',0,0
	.dd LM61-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM61:
	R3=[_sptr]	// QImode move
	R2=R3	// QImode move
	R4=R3+6
	[bp+6]=R4	// QImode move
	R3=0	// HFmode immediate to register move
	R4=15904
	[bp+4]=R3	// HFmode [BP+#IM6]=RS
	[bp+5]=R4
	R3=[bp+4]	// HFmode RD=[BP+#IM6]
	R4=[bp+5]
	R2=[bp+6]	// QImode move
	[R2]=R3	// [RD]=RS HFmode, RD=RS+1
	PUSH BP TO [SP]
	BP=R2
	[BP+1]=R4
	POP BP FROM [SP]
.debug
	.dw '.stabn 0x44,0,182,',0,0
	.dd LM62-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM62:
	R2=[_sptr]	// QImode move
	R3=2000	// QImode move
	R4=R2	// QImode move
	[R4]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,183,',0,0
	.dd LM63-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM63:
.debug
	.dw '.stabn 0x44,0,183,',0,0
	.dd LM64-_IncPIDInit
	.dw 0x0d,0x0a
.code
LM64:
L6:

	sp+=7
	pop bp from [sp]
	retf
	.endp	// end of IncPIDInit

.debug
	.dw '.stabf ',0,0
	.dd LME5-_IncPIDInit
	.dw 0x0d,0x0a
.code
LME5:
.code
.debug
	.dw '.stabs "Spmc75_System_Init:F19",36,0,0,',0,0,offset _Spmc75_System_Init,seg _Spmc75_System_Init,0x0d,0x0a
.CODE
.public _Spmc75_System_Init
_Spmc75_System_Init:	.proc
.debug
	.dw '.stabn 0x44,0,189,',0,0
	.dd LM65-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM65:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,190,',0,0
	.dd LM66-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM66:
// GCC inline ASM start
	int off

// GCC inline ASM end
.debug
	.dw '.stabn 0x44,0,191,',0,0
	.dd LM67-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM67:
	R1=[28779]	// QImode move
	R2=R1|16384
	[28779]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,192,',0,0
	.dd LM68-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM68:
	R1=[28778]	// QImode move
	R2=R1|16384
	[28778]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,193,',0,0
	.dd LM69-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM69:
	R1=[28777]	// QImode move
	R2=R1|16384
	[28777]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,194,',0,0
	.dd LM70-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM70:
	R1=[28776]	// QImode move
	R2=R1&(-16385)
	[28776]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,196,',0,0
	.dd LM71-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM71:
	call _IncPIDInit	// call without return value
.debug
	.dw '.stabn 0x44,0,197,',0,0
	.dd LM72-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM72:
	call _Spmc75_CMT_Init	// call without return value
.debug
	.dw '.stabn 0x44,0,198,',0,0
	.dd LM73-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM73:
	call _Timer_BLDC_Init	// call without return value
.debug
	.dw '.stabn 0x44,0,199,',0,0
	.dd LM74-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM74:
	call _Timer_PDC_Init	// call without return value
.debug
	.dw '.stabn 0x44,0,200,',0,0
	.dd LM75-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM75:
	R1=9600	// QImode move
	[SP--]=R1	// QImode move
	call _MC75_DMC_UART_Setup	// call without return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,201,',0,0
	.dd LM76-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM76:
	call _Timer_Fault_Init	// call without return value
.debug
	.dw '.stabn 0x44,0,202,',0,0
	.dd LM77-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM77:
// GCC inline ASM start
	int fiq,irq

// GCC inline ASM end
.debug
	.dw '.stabn 0x44,0,203,',0,0
	.dd LM78-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM78:
.debug
	.dw '.stabn 0x44,0,203,',0,0
	.dd LM79-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LM79:
L7:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of Spmc75_System_Init

.debug
	.dw '.stabf ',0,0
	.dd LME6-_Spmc75_System_Init
	.dw 0x0d,0x0a
.code
LME6:
.external _MC75_DMC_UART_Setup
.external _sptr
	.end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -