📄 bldcsensor.asm
字号:
*******************************************************
* TMS320C24xx ANSI C Codegen Version 7.04
*******************************************************
; dspac -i../src -v2xx -iD:/CCStudio_v3.1/c2400/cgtools/include bldcsensor.c C:\DOCUME~1\liuping\LOCALS~1\Temp\bldcsensor.if
; dspopt NOT RUN
; dspcg -o -v2xx -o C:\DOCUME~1\liuping\LOCALS~1\Temp\bldcsensor.if C:\DOCUME~1\liuping\LOCALS~1\Temp\bldcsensor.asm C:\DOCUME~1\liuping\LOCALS~1\Temp\bldcsensor.tmp
.port
.bss _SpeedRef,1,1
.bss _CurrentSet,1
.bss _VirtualTimer,1
.bss _ILoopFlag,1
.bss _SpeedLoopFlag,1
.bss _DFuncDesired,1
.bss _speedtime,2,1
.bss _ACTRX1,8
.bss _ACTRX,8
.bss _disp_refresh,1
.bss _runled,1
.bss _COM,1
.bss _keycounter,1
.bss _key,1
.bss _TabShift,1
.bss _wdog,2
.bss _pid1_idc,13
.bss _pid1_spd,13
.bss _pwm1,6
.bss _adc1,11
.bss _hall1,9
.bss _rc1,8
.bss _rmp2,7
.bss _speed1,12
.bss _phantom_count$1,1
.bss _isr_ticker,1
.bss _HallValue,1
.bss _duty,1
.bss _speedcount,1
.file "bldcsensor.c"
.file "../src\regs240x.h"
.globl _portffff
.globl _portff0f
.globl _port0
.globl _port1
.globl _port2
.globl _port3
.globl _port4
.file "../src\sysvecs.h"
.include "..\src\c200mnrt.i"
.include "..\src\x24x.h"
.sect "vectors"
.ref _c_int0
B _c_int0 ;00h reset
B _phantom ;02h INT1
B _phantom ;04h INT2
B _c_int03 ;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 "../src\pid2.h"
.stag .fake0,208
.member _fb_reg2,0,4,8,16
.member _ref_reg2,16,4,8,16
.member _k0_reg2,32,4,8,16
.member _k1_reg2,48,4,8,16
.member _kc_reg2,64,4,8,16
.member _un_reg2,80,4,8,16
.member _en0_reg2,96,4,8,16
.member _upi_reg2,112,4,8,16
.member _epi_reg2,128,4,8,16
.member _max_reg2,144,4,8,16
.member _min_reg2,160,4,8,16
.member _out_reg2,176,4,8,16
.member _calc,192,148,8,16
.eos
.sym _PID2,0,8,13,208,.fake0
.sym _PID2_handle,0,24,13,16,.fake0
.globl _pid2_calc
.file "../src\rmp2cntl.h"
.stag .fake1,112
.member _DesiredInput,0,4,8,16
.member _Ramp2Max,16,4,8,16
.member _Ramp2Min,32,4,8,16
.member _Ramp2DelayCount,48,4,8,16
.member _Ramp2Delay,64,4,8,16
.member _Out,80,4,8,16
.member _calc,96,144,8,16
.eos
.sym _RMP2,0,8,13,112,.fake1
.sym _RMP2_handle,0,24,13,16,.fake1
.globl _rmp2_cntl_calc
.file "../src\speed_pr.h"
.stag .fake2,192
.member _NewTimeStamp,0,4,8,16
.member _OldTimeStamp,16,4,8,16
.member _TimeStamp,32,4,8,16
.member _SpeedScaler,48,4,8,16
.member _EventPeriod,64,4,8,16
.member _InputSelect,80,4,8,16
.member _Speed,96,5,8,32
.member _BaseRpm,128,4,8,16
.member _SpeedRpm,144,4,8,16
.member _motorpairs,160,4,8,16
.member _calc,176,144,8,16
.eos
.sym _SPEED_MEAS_CAP,0,8,13,192,.fake2
.sym _SPEED_MEAS_CAP_handle,0,24,13,16,.fake2
.globl _speed_prd_calc
.file "../src\rmp_cntl.h"
.stag .fake3,128
.member _TargetValue,0,4,8,16
.member _RampDelayMax,16,4,8,16
.member _RampLowLimit,32,4,8,16
.member _RampHighLimit,48,4,8,16
.member _RampDelayCount,64,4,8,16
.member _SetpointValue,80,4,8,16
.member _EqualFlag,96,4,8,16
.member _calc,112,148,8,16
.eos
.sym _RMPCNTL,0,8,13,128,.fake3
.sym _RMPCNTL_handle,0,24,13,16,.fake3
.globl _rmp_cntl_calc
.file "../src\F2407BLDCPWM.h"
.stag .fake4,96
.member _CmtnPointer,0,4,8,16
.member _MfuncPeriod,16,4,8,16
.member _PeriodMax,32,4,8,16
.member _DutyFunc,48,4,8,16
.member _init,64,144,8,16
.member _update,80,144,8,16
.eos
.sym _PWMGEN,0,8,13,96,.fake4
.sym _PWMGEN_handle,0,24,13,16,.fake4
.globl _F2407_BLDC_PWM_Init
.globl _F2407_BLDC_PWM_Update
.file "../src\f2407hall3.h"
.stag .fake5,144
.member _HallMap,0,52,8,64,,4
.member _CapFlag,64,4,8,16
.member _HallMapPointer,80,4,8,16
.member _tab,96,4,8,16
.member _init,112,144,8,16
.member _read,128,144,8,16
.eos
.sym _HALL3,0,8,13,144,.fake5
.sym _HALL3_handle,0,24,13,16,.fake5
.globl _F2407_EV2_HALL3_Init
.globl _F2407_EV2_HALL3_Read
.file "../src\F2407ADC.h"
.stag .fake6,176
.member _Ch1Gain,0,4,8,16
.member _Ch2Gain,16,4,8,16
.member _Ch3Gain,32,4,8,16
.member _Ch4Gain,48,4,8,16
.member _Ch1Out,64,4,8,16
.member _Ch2Out,80,4,8,16
.member _Ch3Out,96,4,8,16
.member _Ch4Out,112,4,8,16
.member _ChSelect,128,14,8,16
.member _init,144,144,8,16
.member _read,160,144,8,16
.eos
.sym _ADCVALS,0,8,13,176,.fake6
.sym _ADCVALS_handle,0,24,13,16,.fake6
.globl _F2407_ADC_Init
.globl _F2407_ADC_Read
.file "../src\F24X_WD.H"
.stag .fake7,32
.member _disable,0,148,8,16
.member _reset,16,148,8,16
.eos
.sym _WATCHDOG,0,8,13,32,.fake7
.sym _WATCHDOG_handle,0,24,13,16,.fake7
.globl _F24x_WD_ResetCounter
.globl _F24x_WD_Disable
.file "../src\bldcSensor.h"
.globl _Iref_disp
.globl _Ifb_disp
.globl _Vref_disp
.globl _Vfb_disp
.globl _fpwm_disp
.globl _Dpwm_disp
.globl _mod6_disp
.globl _Hmap_disp
.globl _prop_int
.file "bldcsensor.c"
.globl _RstSystem
.globl _rtmon_init
.globl _c_int03
.globl _phantom
.globl _GetSpeed
.sect ".cinit"
.word 1,_SpeedRef
.word 1641
.sym _SpeedRef,_SpeedRef,4,2,16
.globl _SpeedRef
.word 1,_CurrentSet
.word 150
.sym _CurrentSet,_CurrentSet,4,2,16
.globl _CurrentSet
.word 1,_VirtualTimer
.word 0
.sym _VirtualTimer,_VirtualTimer,4,2,16
.globl _VirtualTimer
.word 1,_ILoopFlag
.word 0
.sym _ILoopFlag,_ILoopFlag,4,2,16
.globl _ILoopFlag
.word 1,_SpeedLoopFlag
.word 0
.sym _SpeedLoopFlag,_SpeedLoopFlag,4,2,16
.globl _SpeedLoopFlag
.word 1,_DFuncDesired
.word 12287
.sym _DFuncDesired,_DFuncDesired,4,2,16
.globl _DFuncDesired
.word 2,_speedtime
.long 0
.sym _speedtime,_speedtime,5,2,32
.globl _speedtime
.globl _speedcount
.word IS1,_ACTRX1
.word 4095
.word 3902
.word 1022
.word 1007
.word 4067
.word 3827
.word 3647
.word 4095
IS1 .set 8
.sym _ACTRX1,_ACTRX1,62,2,128,,8
.globl _ACTRX1
.word IS2,_ACTRX
.word 4095
.word 4091
.word 4091
.word 4031
.word 4031
.word 3071
.word 3071
.word 4095
IS2 .set 8
.sym _ACTRX,_ACTRX,62,2,128,,8
.globl _ACTRX
.word 1,_disp_refresh
.word 0
.sym _disp_refresh,_disp_refresh,14,2,16
.globl _disp_refresh
.word 1,_runled
.word -1
.sym _runled,_runled,4,2,16
.globl _runled
.word 1,_COM
.word 65280
.sym _COM,_COM,14,2,16
.globl _COM
.word 1,_keycounter
.word 0
.sym _keycounter,_keycounter,4,2,16
.globl _keycounter
.word 1,_key
.word 0
.sym _key,_key,4,2,16
.globl _key
.globl _HallValue
.word 1,_TabShift
.word 0
.sym _TabShift,_TabShift,4,2,16
.globl _TabShift
.globl _duty
.word IS3,_wdog
.word _F24x_WD_Disable+0
.word _F24x_WD_ResetCounter+0
IS3 .set 2
.sym _wdog,_wdog,8,2,32,.fake7
.globl _wdog
.word IS4,_pid1_idc
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word _pid2_calc+0
IS4 .set 13
.sym _pid1_idc,_pid1_idc,8,2,208,.fake0
.globl _pid1_idc
.word IS5,_pid1_spd
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word _pid2_calc+0
IS5 .set 13
.sym _pid1_spd,_pid1_spd,8,2,208,.fake0
.globl _pid1_spd
.word IS6,_pwm1
.word 0
.word 32767
.word 2000
.word 0
.word _F2407_BLDC_PWM_Init+0
.word _F2407_BLDC_PWM_Update+0
IS6 .set 6
.sym _pwm1,_pwm1,8,2,96,.fake4
.globl _pwm1
.word IS7,_adc1
.word 8191
.word 8191
.word 8191
.word 8191
.word 0
.word 0
.word 0
.word 0
.word 28027
.word _F2407_ADC_Init+0
.word _F2407_ADC_Read+0
IS7 .set 11
.sym _adc1,_adc1,8,2,176,.fake6
.globl _adc1
.word IS8,_hall1
.word 0
.word 0
.word 0
.word 0
.word -1
.word 0
.word 0
.word _F2407_EV2_HALL3_Init+0
.word _F2407_EV2_HALL3_Read+0
IS8 .set 9
.sym _hall1,_hall1,8,2,144,.fake5
.globl _hall1
.word IS9,_rc1
.word 0
.word 5
.word -32768
.word 32767
.word 0
.word 0
.word 0
.word _rmp_cntl_calc+0
IS9 .set 8
.sym _rc1,_rc1,8,2,128,.fake3
.globl _rc1
.word IS10,_rmp2
.word 0
.word 32767
.word 15
.word 0
.word 50
.word 0
.word _rmp2_cntl_calc+0
IS10 .set 7
.sym _rmp2,_rmp2,8,2,112,.fake1
.globl _rmp2
.word IS11,_speed1
.word 0
.word 0
.word 0
.word 400
.word 0
.word 0
.long 0
.word 6000
.word 0
.word 0
.word _speed_prd_calc+0
IS11 .set 12
.sym _speed1,_speed1,8,2,192,.fake2
.globl _speed1
.globl _isr_ticker
.text
.sym _main,_main,32,2,0
.globl _main
.func 61
;>>>> void main()
******************************************************
* FUNCTION DEF : _main
******************************************************
_main:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,3
LAR AR0,*0+
.line 6
;>>>> RstSystem();
;>>>> // Initialize PWM module
CALL _RstSystem
.line 8
;>>>> pwm1.DutyFunc = DFuncDesired; // DutyFunc = Q15
LDPK _DFuncDesired
BLDD _DFuncDesired,#_pwm1+3
.line 9
;>>>> pwm1.init(&pwm1); /* pwm driver initialization */
;>>>> // Initialize ADC module
LALK _pwm1+0
SACL *+
LAC _pwm1+4
CALA
MAR *-
.line 11
;>>>> adc1.ChSelect = 0x6666; //母线电流通道AD06
LDPK _adc1+8
SPLK #26214,_adc1+8
.line 12
;>>>> adc1.init(&adc1);
;>>>> // Initialize the SPEED_PR module (150 MHz, N = 1 event period/rev)
LALK _adc1+0
SACL *+
LAC _adc1+9
CALA
MAR *-
.line 14
;>>>> speed1.InputSelect = 0; //?
LACK 0
LDPK _speed1+5
SACL _speed1+5
.line 15
;>>>> speed1.BaseRpm = 6000; //120*(BASE_FREQ/P);
SPLK #6000,_speed1+8
.line 16
;>>>> speed1.SpeedScaler = 400; //(Uint32)(ISR_FREQUENCY/(1*BASE_FREQ*0.001));BASE_FREQ=100;ISR_FREQUENCY=40(K)
SPLK #400,_speed1+3
.line 17
;>>>> speed1.motorpairs= 23;
;>>>> // Initialize RMPCNTL module
LACK 23
SACL _speed1+10
.line 19
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -