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

📄 mian.asm

📁 一个TI TMS320F240的简单测试程序
💻 ASM
字号:
*******************************************************
* TMS320C2x/C2xx/C5x ANSI C Codegen Version 7.00       
*******************************************************
;	C:\tic2xx\c2000\cgtools\bin\dspac.exe -v2xx mian.c C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mian.if 
;	dspopt NOT RUN
;	C:\tic2xx\c2000\cgtools\bin\dspcg.exe -o -v2xx -o C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mian.if C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mian.asm C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mian.tmp 
	.port
	.file	"mian.c"
	.file	"register.h"
	.globl	_portFFFF
	.file	"C:\tic2xx\c2000\cgtools\include\stdio.h"
	.sym	_size_t,0,14,13,16

	.stag	.fake0,112
	.member	_fd,0,4,8,16
	.member	_buf,16,28,8,16
	.member	_pos,32,28,8,16
	.member	_bufend,48,28,8,16
	.member	_buff_stop,64,28,8,16
	.member	_flags,80,14,8,16
	.member	_index,96,4,8,16
	.eos
	.sym	_FILE,0,8,13,112,.fake0
	.sym	_fpos_t,0,5,13,32

	.stag	.fake1,272
	.member	_name,0,50,8,144,,9
	.member	_flags,144,13,8,16
	.member	_OPEN,160,148,8,16
	.member	_CLOSE,176,148,8,16
	.member	_READ,192,148,8,16
	.member	_WRITE,208,148,8,16
	.member	_LSEEK,224,149,8,16
	.member	_UNLINK,240,148,8,16
	.member	_RENAME,256,148,8,16
	.eos
	.sym	__DEVICE,0,8,13,272,.fake1
	.globl	__ftable
	.globl	__tmpnams
	.globl	_remove
	.globl	_rename
	.globl	_tmpfile
	.globl	_tmpnam
	.globl	_fclose
	.globl	_fopen
	.globl	_freopen
	.globl	_setbuf
	.globl	_setvbuf
	.globl	_fflush
	.globl	_fprintf
	.globl	_fscanf
	.globl	_printf
	.globl	_scanf
	.globl	_sprintf
	.globl	_sscanf
	.globl	_vfprintf
	.globl	_vprintf
	.globl	_vsprintf
	.globl	_fgetc
	.globl	_fgets
	.globl	_fputc
	.globl	_fputs
	.globl	_getc
	.globl	_getchar
	.globl	_gets
	.globl	_putc
	.globl	_putchar
	.globl	_puts
	.globl	_ungetc
	.globl	_fread
	.globl	_fwrite
	.globl	_fgetpos
	.globl	_fseek
	.globl	_fsetpos
	.globl	_ftell
	.globl	_rewind
	.globl	_clearerr
	.globl	_feof
	.globl	_ferror
	.globl	_perror
	.globl	_getenv
	.globl	_add_device
	.file	"mian.c"
	.text

	.sym	_KickDog,_KickDog,32,2,0
	.globl	_KickDog

	.func	9
;>>>> 	void KickDog(void)
******************************************************
* FUNCTION DEF : _KickDog
******************************************************
_KickDog:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	3
;>>>> 	     *WDKEY=0X0055;
	LARK	AR3,28709
	LACK	85
	SACL	* 
	.line	4
;>>>> 	     *WDKEY=0X00AA;
	LACK	170
	SACL	* 
	.line	5
;>>>> 	     *WDCR=0X006F;
	LACK	111
	ADRK	4
	SACL	* 
	.line	6
;>>>> 	     return;
EPI0_1:
	.line	7
	MAR	* ,AR1
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	15,000000000H,1

	.sym	_HardwareInit,_HardwareInit,32,2,0
	.globl	_HardwareInit

	.func	17
;>>>> 	void HardwareInit(void)
******************************************************
* FUNCTION DEF : _HardwareInit
******************************************************
_HardwareInit:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+

	.line	3
;>>>> 	    asm(" clrc CNF");
 clrc CNF
	.line	4
;>>>> 	    asm(" setc SXM");
 setc SXM
	.line	5
;>>>> 	    *IFR=0X0FFFF;
	LARK	AR3,6
	MAR	* ,AR3
	SPLK	#65535,* 
	.line	6
;>>>> 	    *IMR=0X0004;     /*enable Int2*/
	LACK	4
	SBRK	2
	SACL	* 
	.line	8
;>>>> 	    *CKCR1=0X00BB;   /*clock in is 10MHz,cpu clock is 20Mhz*/
	LARK	AR4,28717
	ADRK	183
	MAR	* ,AR4
	SAR	AR3,* ,AR3
	.line	9
;>>>> 	    *CKCR0=0X00C1;
	ADRK	6
	MAR	* ,AR4
	SBRK	2
	SAR	AR3,* 
	.line	10
;>>>> 	    *SYSCR=0X40C0; 
	SBRK	19
	SPLK	#16576,* ,AR3
	.line	11
;>>>> 	    *WDCR=0X006F; 
	SBRK	82
	MAR	* ,AR4
	ADRK	17
	SAR	AR3,* ,AR3
	.line	12
;>>>> 	    *OCRA=0X0000;
	SBRK	111
	MAR	* ,AR4
	ADRK	103
	SAR	AR3,* 
	.line	13
;>>>> 	    *OCRB=0XFFFF;
	ADRK	2
	SPLK	#65535,* 
	.line	14
;>>>> 	    *PBDATDIR=0XFF0F;
	ADRK	8
	SPLK	#65295,* ,AR1
	.line	15
;>>>> 	    KickDog();
	CALL	_KickDog
	.line	16
;>>>> 	    return;
EPI0_2:
	.line	17
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	33,000000000H,1

	.sym	_T2PInit,_T2PInit,32,2,0
	.globl	_T2PInit

	.func	36
;>>>> 	void T2PInit(void)
******************************************************
* FUNCTION DEF : _T2PInit
******************************************************
_T2PInit:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	3
;>>>> 	  *T2CNT=0X0000;
	LARK	AR3,29701
	LACK	0
	SACL	* 
	.line	4
;>>>> 	  *T2PR=0X186A;     /*timer interrupt frequence is 100HZ*/
	ADRK	2
	SPLK	#6250,*+
	.line	5
;>>>> 	  *T2CON=0X0EC0A;   /*continuous up/down mode,TPS is 16 */
	SPLK	#60426,* 
	.line	7
;>>>> 	  *EVIFRB|=0X0001;
	ADRK	40
	LACK	1
	OR	* 
	SACL	* 
	.line	8
;>>>> 	  *EVIMRB=0X0001;    /*enable timer1 Period interrupt*/
	LACK	1
	SBRK	3
	SACL	* 
	.line	9
;>>>> 	  return;
EPI0_3:
	.line	10
	MAR	* ,AR1
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	45,000000000H,1

	.sym	_nothing,_nothing,32,2,0
	.globl	_nothing

	.func	46
;>>>> 	void  nothing(void)
******************************************************
* FUNCTION DEF : _nothing
******************************************************
_nothing:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+

	.line	3
;>>>> 	  return;
EPI0_4:
	.line	4
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	49,000000000H,1

	.sym	_main,_main,32,2,0
	.globl	_main

	.func	52
;>>>> 	void main(void)
;>>>> 	int i;
******************************************************
* FUNCTION DEF : _main
******************************************************
_main:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,2
	LAR	AR0,*0+

	.sym	_i,1,4,1,16
	.line	4
;>>>> 	  HardwareInit();
	CALL	_HardwareInit
	.line	5
;>>>> 	  T2PInit();
	CALL	_T2PInit
	.line	6
;>>>> 	  i=100;
;>>>> 	  //printf("Inital End.\n");
	LACK	100
	MAR	* ,AR2
	LARK	AR2,1
	MAR	*0+
	SACL	* ,AR1
	.line	8
;>>>> 	  puts("Inital End.\n");
	LRLK	AR3,SL0
	SAR	AR3,*+
	CALL	_puts
	MAR	*-
EPI0_5:
	.line	9
	SBRK	3
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	60,000000000H,2
******************************************************
* DEFINE STRING CONSTANTS                            *
******************************************************
	.sect	".const"
SL0:	.byte	"Inital End.",10,0
	.end

⌨️ 快捷键说明

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