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

📄 mod6_cnt.asm

📁 TI公司的DSP(LF2407A)编写的有霍尔位置传感器的无刷直流电机控制程序,内含子程序说明
💻 ASM
字号:
*******************************************************
* TMS320C24xx ANSI C Codegen Version 7.04       
*******************************************************
;	dspac -i../src -v2xx -iD:/CCStudio_v3.1/c2400/cgtools/include mod6_cnt.c C:\DOCUME~1\liuping\LOCALS~1\Temp\mod6_cnt.if 
;	dspopt NOT RUN
;	dspcg -o -v2xx -o C:\DOCUME~1\liuping\LOCALS~1\Temp\mod6_cnt.if C:\DOCUME~1\liuping\LOCALS~1\Temp\mod6_cnt.asm C:\DOCUME~1\liuping\LOCALS~1\Temp\mod6_cnt.tmp 
	.port
	.file	"mod6_cnt.c"
	.file	"../src\mod6_cnt.h"

	.stag	.fake0,48
	.member	_TrigInput,0,4,8,16
	.member	_Counter,16,4,8,16
	.member	_calc,32,144,8,16
	.eos
	.sym	_MOD6CNT,0,8,13,48,.fake0
	.sym	_MOD6CNT_handle,0,24,13,16,.fake0
	.globl	_mod6cnt_calc
	.file	"mod6_cnt.c"
	.text

	.sym	_mod6cnt_calc,_mod6cnt_calc,32,2,0
	.globl	_mod6cnt_calc

	.func	12
;>>>> 	void mod6cnt_calc(MOD6CNT *v)
******************************************************
* FUNCTION DEF : _mod6cnt_calc
******************************************************
_mod6cnt_calc:

LF1	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR2

	.sym	_v,-3+LF1,24,9,16,.fake0
	.line	2
	.line	4
;>>>> 	   if (v->TrigInput > 0)
	LARK	AR2,-3+LF1
	MAR	*0+
	LAR	AR3,* ,AR3
	SSXM
	LAC	* 
	BLEZ	L1
	.line	6
;>>>> 	     if (v->Counter == 5)    // Reset the counter when it is 5
	MAR	*+
	LAC	* 
	SUBK	5
	BNZ	L2
	.line	7
;>>>> 	       v->Counter = 0;       
;>>>> 	     else
	LACK	0
	SACL	* 
	B	L1
L2:
	.line	9
;>>>> 	       v->Counter++;         // Otherwise, increment by 1
	LAC	* 
	ADDK	1
	SACL	* 
L1:
EPI0_1:
	.line	12
	MAR	* ,AR1
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	23,000000000H,1
	.end

⌨️ 快捷键说明

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