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

📄 vhz.asm

📁 本程序来自TI公司网站原程序,其功能是通过传统的V/F控制算法来实现对感应电机的控制,控制程序可以采用.asm也可以采用.C。 程序的具体算法和介绍在软件压缩包有详细介绍!
💻 ASM
📖 第 1 页 / 共 2 页
字号:
*******************************************************
* TMS320C24xx ANSI C Codegen Version 7.02       
*******************************************************
;	dspac -i../../../../rtmon/ -i../include -i../../../../lib/dmclib/clib/include -i../../../../lib/drvlib/clib/include -v2xx -iC:/t
;	dspopt NOT RUN
;	dspcg -o -v2xx -o C:\WINDOWS\TEMP\vhz.if C:\WINDOWS\TEMP\vhz.asm C:\WINDOWS\TEMP\vhz.tmp 
	.port
	.bss	_pwm,7,1
	.bss	_cap,3
	.bss	_speed,9
	.bss	_vhz,36
	.bss	_dac,6
	.bss	_wdog,2
	.bss	_drive,3
	.bss	_phantom_count$1,1
	.bss	_isr_ticker,1
	.file	"vhz.c"
	.file	"../../../../lib/drvlib/clib/include\regs240x.h"
	.globl	_portffff
	.globl	_portff0f
	.globl	_port0
	.globl	_port1
	.globl	_port2
	.globl	_port3
	.globl	_port4
	.file	"../include\sysvecs.h"
 		 .include "..\..\..\..\rtmon\c200mnrt.i"				
 		 .include "..\..\..\..\lib\drvlib\clib\include\x24x.h"  
       	 .sect   "vectors"                              		
       	 .ref    _c_int0                                  		
       	 B       _c_int0         ;00h reset               		
       	 B       _phantom        ;02h INT1                		
       	 B       _c_int02        ;04h INT2                		
       	 B       _phantom        ;06h INT3                		
       	 B       _phantom        ;08h INT4                		
       	 B       _phantom        ;0Ah INT5                		
       	 B       _phantom        ;0Ch INT6                		
      .if ( 1 ) ; macro occupies fourteen words in the vector table.	
											
MON_EINTR   mon_eintr_vecs       ; 0E					
                                 ; 10					
                                 ; 12					
                                 ; 14					
                                 ; 16					
                                 ; 18					
                                 ; 1A					
            .else ; macro not in vector table.				
MON_EINTR_B B     MON_EINTR      ; 0E					
HUNG10      B     HUNG10         ; 10					
HUNG12      B     HUNG12         ; 12					
HUNG14      B     HUNG14         ; 14					
HUNG16      B     HUNG16         ; 16					
HUNG18      B     HUNG18         ; 18					
HUNG1A      B     HUNG1A         ; 1A					
            .endif								
HUNG1C      B     HUNG1C         ; 1C					
HUNG1E      B     HUNG1E         ; 1E					
HUNG20      B     HUNG20         ; 20					
TRAP        B     TRAP           ; 22					
NMI         B     _phantom        ; 24					
            .if ( 1 ) ; macro occupies eight words in the vector table.	
MON_ETRAP   mon_etrap_vecs       ; 26					
                                 ; 28					
                                 ; 2A					
                                 ; 2C					
            .else ; macro not in vector table.				
MON_ETRAP_B B     MON_ETRAP      ; 26					
HUNG28      B     _phantom         ; 28					
HUNG2A      B     _phantom         ; 2A					
HUNG2C      B     _phantom         ; 2C					
            .endif								
HUNG2E      B     _phantom         ; 2E					
HUNG30      B     _phantom         ; 30					
HUNG32      B     _phantom         ; 32					
HUNG34      B     _phantom         ; 34					
HUNG36      B     _phantom         ; 36					
HUNG38      B     _phantom         ; 38					
HUNG3A      B     _phantom         ; 3A					
HUNG3C      B     _phantom         ; 3C					
HUNG3E      B     _phantom         ; 3E					
	.file	"../../../../lib/drvlib/clib/include\evmdac.h"

	.stag	.fake0,96
	.member	_qptr0,0,20,8,16
	.member	_qptr1,16,20,8,16
	.member	_qptr2,32,20,8,16
	.member	_qptr3,48,20,8,16
	.member	_scale,64,4,8,16
	.member	_update,80,148,8,16
	.eos
	.sym	_EVMDAC,0,8,13,96,.fake0
	.globl	_F24X_EVM_DAC_Update
	.file	"../../../../lib/drvlib/clib/include\F2407PWM.H"

	.stag	.fake1,112
	.member	_period_max,0,4,8,16
	.member	_mfunc_p,16,4,8,16
	.member	_mfunc_c1,32,4,8,16
	.member	_mfunc_c2,48,4,8,16
	.member	_mfunc_c3,64,4,8,16
	.member	_init,80,148,8,16
	.member	_update,96,148,8,16
	.eos
	.sym	_PWMGEN,0,8,13,112,.fake1
	.sym	_PWMGEN_handle,0,24,13,16,.fake1
	.globl	_F2407_EV1_PWM_Init
	.globl	_F2407_EV1_PWM_Update
	.globl	_F2407_EV2_PWM_Init
	.globl	_F2407_EV2_PWM_Update
	.file	"../../../../lib/drvlib/clib/include\F2407CAP.H"

	.stag	.fake2,48
	.member	_time_stamp,0,4,8,16
	.member	_init,16,148,8,16
	.member	_read,32,148,8,16
	.eos
	.sym	_CAPTURE,0,8,13,48,.fake2
	.sym	_CAPTURE_handle,0,24,13,16,.fake2
	.globl	_F2407_EV1_CAP_Init
	.globl	_F2407_EV1_CAP1_Read
	.file	"../../../../lib/drvlib/clib/include\F24X_WD.H"

	.stag	.fake3,32
	.member	_disable,0,148,8,16
	.member	_reset,16,148,8,16
	.eos
	.sym	_WATCHDOG,0,8,13,32,.fake3
	.sym	_WATCHDOG_handle,0,24,13,16,.fake3
	.globl	_F24x_WD_ResetCounter
	.globl	_F24x_WD_Disable
	.file	"../../../../lib/dmclib/clib/include\speed_pr.h"

	.stag	.fake4,144
	.member	_time_stamp_new,0,4,8,16
	.member	_time_stamp_old,16,4,8,16
	.member	_time_stamp,32,4,8,16
	.member	_shift,48,4,8,16
	.member	_speed_scaler,64,4,8,16
	.member	_speed_prd,80,4,8,16
	.member	_rpm_max,96,4,8,16
	.member	_speed_rpm,112,4,8,16
	.member	_calc,128,148,8,16
	.eos
	.sym	_SPEED_MEAS,0,8,13,144,.fake4
	.globl	_speed_prd
	.file	"../../../../lib/dmclib/clib/include\Vhzprof.h"

	.stag	.fake5,128
	.member	_freq,0,4,8,16
	.member	_fl,16,4,8,16
	.member	_fh,32,4,8,16
	.member	_slope,48,4,8,16
	.member	_vmax,64,4,8,16
	.member	_vmin,80,4,8,16
	.member	_vout,96,4,8,16
	.member	_calc,112,148,8,16
	.eos
	.sym	_VHZPROFILE,0,8,13,128,.fake5
	.globl	_Vhz_Profile_Calculate
	.file	"../../../../lib/dmclib/clib/include\svgen.h"

	.stag	.fake6,144
	.member	_gain,0,4,8,16
	.member	_freq,16,4,8,16
	.member	_freq_max,32,4,8,16
	.member	_alpha,48,4,8,16
	.member	_sector,64,4,8,16
	.member	_va,80,4,8,16
	.member	_vb,96,4,8,16
	.member	_vc,112,4,8,16
	.member	_calc,128,148,8,16
	.eos
	.sym	_SVGENMF,0,8,13,144,.fake6
	.sym	_SVGENMF_handle,0,24,13,16,.fake6

	.stag	.fake7,96
	.member	_d,0,4,8,16
	.member	_q,16,4,8,16
	.member	_va,32,4,8,16
	.member	_vb,48,4,8,16
	.member	_vc,64,4,8,16
	.member	_calc,80,148,8,16
	.eos
	.sym	_SVGENDQ,0,8,13,96,.fake7
	.sym	_SVGENDQ_handle,0,24,13,16,.fake7
	.globl	_svgenmf_calc
	.globl	_svgendq_calc
	.file	"../../../../lib/dmclib/clib/include\pid.h"

	.stag	.fake8,240
	.member	_un_H,0,4,8,16
	.member	_un_L,16,4,8,16
	.member	_en,32,4,8,16
	.member	_en_1,48,4,8,16
	.member	_en_2,64,4,8,16
	.member	_K0,80,4,8,16
	.member	_K1,96,4,8,16
	.member	_K2,112,4,8,16
	.member	_Kx,128,4,8,16
	.member	_Kf,144,4,8,16
	.member	_rn,160,4,8,16
	.member	_psat,176,4,8,16
	.member	_nsat,192,4,8,16
	.member	_output,208,4,8,16
	.member	_calc,224,148,8,16
	.eos
	.sym	_PID,0,8,13,240,.fake8
	.globl	_pid_ff
	.file	"../include\vhz_ti.h"

	.stag	.fake9,576
	.member	_speed_setpt,0,4,8,16
	.member	_speed_value,16,4,8,16
	.member	_direction,32,4,8,16
	.member	_closed_loop_flag,48,4,8,16
	.member	_vhzprof,64,8,8,128,.fake5
	.member	_svgen,192,8,8,144,.fake6
	.member	_pid,336,8,8,240,.fake8
	.eos
	.sym	_VHZ_TI,0,8,13,576,.fake9
	.sym	_VHZ_TI_handle,0,24,13,16,.fake9
	.globl	_VHZ_TI_Init
	.globl	_VHZ_TI_Run
	.file	"../../../../lib/drvlib/clib/include\drive.h"

	.stag	.fake10,48
	.member	_enable_flg,0,4,8,16
	.member	_init,16,148,8,16
	.member	_calc,32,148,8,16
	.eos
	.sym	_DRIVE,0,8,13,48,.fake10
	.globl	_F24xx_drive_drv_init
	.globl	_F24xx_drive_drv_calc
	.file	"../include\vhz.h"

	.stag	.fake11,48
	.member	_a,0,4,8,16
	.member	_b,16,4,8,16
	.member	_c,32,4,8,16
	.eos
	.sym	_triad,0,8,13,48,.fake11
	.globl	_RstSystem
	.globl	_rtmon_init
	.globl	_c_int02
	.globl	_phantom
	.file	"vhz.c"

	.sect	".cinit"
	.word	IS1,_pwm
	.word	1000
	.word	32767
	.word	16384
	.word	16384
	.word	16384
	.word	_F2407_EV1_PWM_Init+0
	.word	_F2407_EV1_PWM_Update+0
IS1	.set	7

	.sym	_pwm,_pwm,8,2,112,.fake1
	.globl	_pwm
	.word	IS2,_cap
	.word	1
	.word	_F2407_EV1_CAP_Init+0
	.word	_F2407_EV1_CAP1_Read+0
IS2	.set	3

	.sym	_cap,_cap,8,2,48,.fake2
	.globl	_cap
	.word	IS3,_speed
	.word	1
	.word	1
	.word	0
	.word	6
	.word	11621
	.word	32767
	.word	4174
	.word	0
	.word	_speed_prd+0
IS3	.set	9

	.sym	_speed,_speed,8,2,144,.fake4
	.globl	_speed
	.word	IS4,_vhz
	.word	1800
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	32767
	.word	0
	.word	0
	.word	0
	.word	0
	.word	_Vhz_Profile_Calculate+0
	.word	32767
	.word	32767
	.word	2000
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	_svgenmf_calc+0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	32767
	.word	-32767
	.word	0
	.word	1
	.word	0
	.word	0
	.word	32767
	.word	-32767
	.word	0
	.word	_pid_ff+0
IS4	.set	36

	.sym	_vhz,_vhz,8,2,576,.fake9
	.globl	_vhz
	.word	IS5,_dac
	.word	768
	.word	768
	.word	768
	.word	768
	.word	2000
	.word	_F24X_EVM_DAC_Update+0
IS5	.set	6

	.sym	_dac,_dac,8,2,96,.fake0
	.globl	_dac
	.word	IS6,_wdog
	.word	_F24x_WD_Disable+0
	.word	_F24x_WD_ResetCounter+0
IS6	.set	2

	.sym	_wdog,_wdog,8,2,32,.fake3
	.globl	_wdog
	.word	IS7,_drive
	.word	0
	.word	_F24xx_drive_drv_init+0
	.word	_F24xx_drive_drv_calc+0
IS7	.set	3

	.sym	_drive,_drive,8,2,48,.fake10
	.globl	_drive
	.globl	_isr_ticker
	.text

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

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

⌨️ 快捷键说明

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