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

📄 adc.asm

📁 dsp320lf2407上的相关程序文件
💻 ASM
字号:
*******************************************************
* TMS320C24xx ANSI C Codegen Version 7.02       
*******************************************************
;	dspac -v2xx -iC:/ti/c2400/cgtools/include adc.c C:\DOCUME~1\jjd\LOCALS~1\Temp\adc.if 
;	dspopt NOT RUN
;	dspcg -o -v2xx -o C:\DOCUME~1\jjd\LOCALS~1\Temp\adc.if C:\DOCUME~1\jjd\LOCALS~1\Temp\adc.asm C:\DOCUME~1\jjd\LOCALS~1\Temp\adc.tmp 
	.port
	.bss	_adc_res,8,1
	.file	"adc.c"
	.file	"f2407_c.h"
	.globl	_portFF0F
	.globl	_portFFFF
	.file	"adc.c"
	.globl	_port40

	.sect	".cinit"
	.word	IS1,_adc_res
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
IS1	.set	8

	.sym	_adc_res,_adc_res,62,2,128,,8
	.globl	_adc_res
	.globl	_test_adc
	.text

	.sym	_init_adc,_init_adc,32,2,0
	.globl	_init_adc

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

	.line	3
;>>>> 		*T4CNT=0x0000;
	LARK	AR3,29957
	LACK	0
	SACL	* 
	.line	4
;>>>> 		*T4CON=0x170c;
	ADRK	3
	SPLK	#5900,*-
	.line	5
;>>>> 		*T4PR=0x20;
	LACK	32
	SACL	* 
	.line	6
;>>>> 		*GPTCONB=0x400;
	SBRK	7
	SPLK	#1024,* 
	.line	7
;>>>> 		*EVBIFRB=0xffff;
	ADRK	48
	SPLK	#65535,* ,AR4
	.line	8
;>>>> 		*ADCTRL1=0x10;
	LARK	AR4,28832
	LACK	16
	SACL	*+
	.line	9
;>>>> 		*ADCTRL2=0x8404;
	SPLK	#33796,*+
	.line	10
;>>>> 		*MAX_CONV=0x07;
	LACK	7
	SACL	*+
	.line	11
;>>>> 		*CHSELSEQ1=0x3210;
	SPLK	#12816,*+
	.line	12
;>>>> 		*CHSELSEQ2=0x7654;
	SPLK	#30292,* ,AR1
EPI0_1:
	.line	13
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	21,000000000H,1

	.sym	_init_xint2,_init_xint2,32,2,0
	.globl	_init_xint2

	.func	23
;>>>> 	void init_xint2(void)
******************************************************
* FUNCTION DEF : _init_xint2
******************************************************
_init_xint2:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	3
;>>>> 		*XINT1CR = 0x0001;
	LARK	AR3,28784
	LACK	1
	SACL	* ,AR1
EPI0_2:
	.line	4
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	26,000000000H,1

	.sym	_adc_soc,_adc_soc,32,2,0
	.globl	_adc_soc

	.func	28
;>>>> 	void adc_soc(void)
******************************************************
* FUNCTION DEF : _adc_soc
******************************************************
_adc_soc:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	3
;>>>> 		*T4CON=*T4CON|0x40;
	LARK	AR3,29960
	LACK	64
	OR	* 
	SACL	* ,AR1
EPI0_3:
	.line	4
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	31,000000000H,1

	.sym	_int1,_int1,32,2,0
	.globl	_int1

	.func	33
;>>>> 	void interrupt int1(void)
;>>>> 		unsigned int i;
;>>>> 		switch(*PIVR)
;>>>> 			case 0x0001:		/*Xint1 interrupt*/
******************************************************
* FUNCTION DEF : _int1
******************************************************
_int1:
	CALL	I$$SAVE
	SAR	AR1,*
	LARK	AR0,2
	LAR	AR0,*0+

	.sym	_i,1,14,1,16
	B	L1
L2:
	.line	8
;>>>> 				*ADCTRL2|=0x4200;
;>>>> 				//*XINT1CR = *XINT1CR | 0x8000;
	LARK	AR3,28833
	LACK	16896
	MAR	* ,AR3
	OR	* 
	SACL	* 
	.line	10
;>>>> 				break;	
;>>>> 			case 0x0004:		/*ADC interrupt*/
	B	L3
L4:
	.line	14
;>>>> 				asm("	clrc SXM");
	clrc SXM
	.line	15
;>>>> 				for(i=0;i<8;i++)
	LACK	0
	MAR	* ,AR2
	LARK	AR2,1
	MAR	*0+
	SACL	* 
	ZALS	* 
	SUBK	8
	BGEZ	L6
	RSXM ;;;
L5:
	.line	16
;>>>> 					adc_res[i]=*(RESULT0+i)>>6;
	LAC	* ,AR0
	ADDK	28840
	SACL	* 
	LAR	AR3,* ,AR3
	LAC	* ,9,AR1
	SACH	* ,1,AR2
	LAC	* ,AR0
	ADLK	_adc_res+0,0
	SACL	* 
	LAR	AR3,* ,AR1
	LAC	* ,AR3
	SACL	* ,AR2
	.line	15
	LAC	* 
	ADDK	1
	SACL	* 
	ZALS	* 
	SUBK	8
	BLZ	L5
L6:
	.line	17
;>>>> 				*XINT1CR = *XINT1CR | 0x8000;
	LARK	AR3,28784
	LALK	1,15
	MAR	* ,AR3
	OR	* 
	SACL	* 
	.line	18
;>>>> 				break;
;>>>> 			default:
;>>>> 				;
	B	L3
L1:
	.line	4
	LARK	AR3,28702
	MAR	* ,AR3
	ZALS	* 
	SUBK	1
	BZ	L2
	SUBK	3
	BZ	L4
L3:
	.line	24
;>>>> 		*IFR|=0x0001;
	LARK	AR3,6
	LACK	1
	MAR	* ,AR3
	OR	* 
	SACL	* 
	.line	25
;>>>> 		asm(" CLRC INTM");
 CLRC INTM
EPI0_4:
	.line	26
	MAR	* ,AR1
	SBRK	2
	B	I$$REST,AR1   ;and return

	.endfunc	58,000000000H,2

	.sym	_test_adc,_test_adc,32,2,0
	.globl	_test_adc

	.func	61
;>>>> 	void test_adc(void)
******************************************************
* FUNCTION DEF : _test_adc
******************************************************
_test_adc:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR0

	.line	3
;>>>> 		LED = 0x00fd;
	LACK	253
	SACL	* 
	OUT	* ,040h,AR1
	.line	4
;>>>> 		init_adc();
	CALL	_init_adc
	.line	5
;>>>> 		adc_soc();
	CALL	_adc_soc
	.line	6
;>>>> 		init_xint2();
	CALL	_init_xint2
EPI0_5:
	.line	7
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	67,000000000H,1
*****************************************************
* UNDEFINED REFERENCES                              *
*****************************************************
	.global	I$$SAVE
	.global	I$$REST
	.end

⌨️ 快捷键说明

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