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

📄 main.asm

📁 TMS320C2000Flash操作
💻 ASM
字号:
*******************************************************
* TMS320C2x/C2xx/C5x ANSI C Codegen Version 7.00       
*******************************************************
;	C:\TOOLS\CC411\C2000\CGTOOLS\BIN\DSPAC.EXE -v2xx main.c c:\windows\TEMP\main.if 
;	dspopt NOT RUN
;	C:\TOOLS\CC411\C2000\CGTOOLS\BIN\DSPCG.EXE -o -v2xx -o c:\windows\TEMP\main.if c:\windows\TEMP\main.asm c:\windows\TEMP\main.tmp 
	.port
	.bss	_bufferArray,5,1
	.file	"main.c"
	.globl	_lf240xInitSys
	.file	"..\\flashalgos\\include\\CFlash.h"
	.globl	_copyClearAlgo
	.globl	_copyEraseAlgo
	.globl	_copyProgramAlgo
	.globl	_copyKernel

	.stag	_FlashAlgoVars,256
	.member	_ADDR,0,4,8,16
	.member	_PAD,16,4,8,16
	.member	_READ,32,4,8,16
	.member	_DATA,48,4,8,16
	.member	_PAD1,64,4,8,16
	.member	_PLS_CNT,80,4,8,16
	.member	_LASTVER,96,4,8,16
	.member	_FL_SECST,112,4,8,16
	.member	_FL_SECEND,128,4,8,16
	.member	_FL_CMD,144,4,8,16
	.member	_ERASESEC,160,4,8,16
	.member	_DATA_PTR,176,4,8,16
	.member	_FAIL_CMD,192,4,8,16
	.member	_SECTOR_KEY,208,4,8,16
	.member	_SECTOR_CMD,224,4,8,16
	.member	_ALGO_STATUS,240,4,8,16
	.eos
	.sym	_FlashAlgoVars,0,8,13,256,_FlashAlgoVars
	.globl	_flashAlgoVars
	.globl	_clearFlash
	.globl	_eraseFlash
	.globl	_programFlash
	.file	"regs240x.h"
	.globl	_portffff
	.globl	_portff0f
	.globl	_port0
	.globl	_port1
	.globl	_port2
	.globl	_port3
	.globl	_port4
	.file	"main.c"

	.sect	".cinit"
	.word	IS1,_bufferArray
	.word	4677
	.word	29750
	.word	-31690
	.word	-30925
	.word	17304
IS1	.set	5

	.sym	_bufferArray,_bufferArray,52,2,80,,5
	.globl	_bufferArray
	.text

	.sym	_main,_main,36,2,0
	.globl	_main

	.func	72
;>>>> 	main()
******************************************************
* FUNCTION DEF : _main
******************************************************
_main:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+

	.line	9
;>>>> 		lf240xInitSys();     
	CALL	_lf240xInitSys
	.line	12
;>>>> 		copyKernel();
	CALL	_copyKernel
	.line	13
;>>>> 	    kernelControlLoop();
	CALL	_kernelControlLoop
L1:
	.line	17
;>>>> 		while(1);
	B	L1
	.endfunc	90,000000000H,1
	.sect	"KER_text"

	.sym	_kernelControlLoop,_kernelControlLoop,36,2,0
	.globl	_kernelControlLoop
	.sect	"KER_text"

	.func	91
;>>>> 	int kernelControlLoop(void)
******************************************************
* FUNCTION DEF : _kernelControlLoop
******************************************************
_kernelControlLoop:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+

	.line	3
;>>>> 		copyClearAlgo();
	CALL	_copyClearAlgo
	.line	5
;>>>> 		flashAlgoVars.SECTOR_CMD=(SECTOR1);
	LACK	2
	LDPK	_flashAlgoVars+14
	SACL	_flashAlgoVars+14
	.line	9
;>>>> 		clearFlash(&flashAlgoVars);
	LALK	_flashAlgoVars+0
	SACL	*+
	CALL	_clearFlash
	MAR	*-
	.line	11
;>>>> 		copyEraseAlgo();
	CALL	_copyEraseAlgo
	.line	12
;>>>> 		flashAlgoVars.SECTOR_CMD=(SECTOR1);
	LACK	2
	LDPK	_flashAlgoVars+14
	SACL	_flashAlgoVars+14
	.line	13
;>>>> 		eraseFlash(&flashAlgoVars);
	LALK	_flashAlgoVars+0
	SACL	*+
	CALL	_eraseFlash
	MAR	*-
	.line	17
;>>>> 		copyProgramAlgo();
	CALL	_copyProgramAlgo
	.line	20
;>>>> 		flashAlgoVars.SECTOR_CMD=(SECTOR1);
	LACK	2
	LDPK	_flashAlgoVars+14
	SACL	_flashAlgoVars+14
	.line	22
;>>>> 	    flashAlgoVars.DATA_PTR=(int)(&bufferArray);
	LALK	_bufferArray+0
	LDPK	_flashAlgoVars+11
	SACL	_flashAlgoVars+11
	.line	24
;>>>> 	    flashAlgoVars.FL_SECEND=0x4;
	LACK	4
	LDPK	_flashAlgoVars+8
	SACL	_flashAlgoVars+8
	.line	26
;>>>> 		flashAlgoVars.ADDR=0x1023;
	LDPK	_flashAlgoVars
	SPLK	#4131,_flashAlgoVars
	.line	28
;>>>> 		programFlash(&flashAlgoVars);      
	LALK	_flashAlgoVars+0
	SACL	*+
	CALL	_programFlash
	MAR	*-
EPI0_2:
	.line	41
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	131,000000000H,1
	.sect	"KER_text"

	.sym	_AnotherKernelFunction,_AnotherKernelFunction,36,2,0
	.globl	_AnotherKernelFunction
	.sect	"KER_text"

	.func	133
;>>>> 	int AnotherKernelFunction(void)
******************************************************
* FUNCTION DEF : _AnotherKernelFunction
******************************************************
_AnotherKernelFunction:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+

EPI0_3:
	.line	3
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	135,000000000H,1
	.text

	.sym	_lf240xInitSys,_lf240xInitSys,32,2,0
	.globl	_lf240xInitSys

	.func	138
;>>>> 	void lf240xInitSys(void)
******************************************************
* FUNCTION DEF : _lf240xInitSys
******************************************************
_lf240xInitSys:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	4
;>>>> 	    WDCR=0x6f;              /* Dis-able the watchdog */
	LARK	AR3,28713
	LACK	111
	SACL	* 
	.line	5
;>>>> 	    SCSR1=0x0;				/* PLL = x4 */
	LACK	0
	SBRK	17
	SACL	* ,AR1
EPI0_4:
	.line	7
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	144,000000000H,1
	.end

⌨️ 快捷键说明

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