📄 dsp28_globalvariabledefs.c
字号:
//
// TMDX ALPHA RELEASE
// Intended for product evaluation purposes
//
//###########################################################################
//
// FILE: DSP28_GlobalVariableDefs.c
//
// TITLE: DSP28 Global Variables and Data Section Pragmas.
//
//###########################################################################
//
// Ver | dd mmm yyyy | Who | Description of changes
// =====|=============|======|===============================================
// 0.55| 06 May 2002 | L.H. | EzDSP Alpha Release
// 0.56| 21 May 2002 | L.H. | Corrected case typo - PIE -> Pie
// 0.57| 27 May 2002 | L.H. | No change
//###########################################################################
//---------------------------------------------------------------------------
// Define Global Peripheral Variables:
//
#include "DSP28_Device.h"
#pragma DATA_SECTION(AdcRegs,"AdcRegsFile");
volatile struct ADC_REGS AdcRegs;
#pragma DATA_SECTION(CpuTimer0Regs,"CpuTimer0RegsFile");
volatile struct CPUTIMER_REGS CpuTimer0Regs;
#pragma DATA_SECTION(CpuTimer1Regs,"CpuTimer1RegsFile");
volatile struct CPUTIMER_REGS CpuTimer1Regs;
#pragma DATA_SECTION(CpuTimer2Regs,"CpuTimer2RegsFile");
volatile struct CPUTIMER_REGS CpuTimer2Regs;
#pragma DATA_SECTION(ECanaRegs,"ECanaRegsFile");
volatile struct ECAN_REGS ECanaRegs;
#pragma DATA_SECTION(ECanaMboxes,"ECanaMboxesFile");
volatile struct ECAN_MBOXES ECanaMboxes;
#pragma DATA_SECTION(EvaRegs,"EvaRegsFile");
volatile struct EVA_REGS EvaRegs;
#pragma DATA_SECTION(EvbRegs,"EvbRegsFile");
volatile struct EVB_REGS EvbRegs;
#pragma DATA_SECTION(GpioDataRegs,"GpioDataRegsFile");
volatile struct GPIO_DATA_REGS GpioDataRegs;
#pragma DATA_SECTION(GpioMuxRegs,"GpioMuxRegsFile");
volatile struct GPIO_MUX_REGS GpioMuxRegs;
#pragma DATA_SECTION(McbspaRegs,"McbspaRegsFile");
volatile struct MCBSP_REGS McbspaRegs;
#pragma DATA_SECTION(PieCtrl,"PieCtrlRegsFile");
volatile struct PIE_CTRL_REGS PieCtrl;
#pragma DATA_SECTION(PieVectTable,"PieVectTable");
struct PIE_VECT_TABLE PieVectTable;
#pragma DATA_SECTION(SciaRegs,"SciaRegsFile");
volatile struct SCI_REGS SciaRegs;
#pragma DATA_SECTION(ScibRegs,"ScibRegsFile");
volatile struct SCI_REGS ScibRegs;
#pragma DATA_SECTION(SpiaRegs,"SpiaRegsFile");
volatile struct SPI_REGS SpiaRegs;
#pragma DATA_SECTION(SysCtrlRegs,"SysCtrlRegsFile");
volatile struct SYS_CTRL_REGS SysCtrlRegs;
#pragma DATA_SECTION(DevEmuRegs,"DevEmuRegsFile");
volatile struct DEV_EMU_REGS DevEmuRegs;
#pragma DATA_SECTION(CsmRegs,"CsmRegsFile");
volatile struct CSM_REGS CsmRegs;
#pragma DATA_SECTION(CsmPwl,"CsmPwlFile");
volatile struct CSM_PWL CsmPwl;
#pragma DATA_SECTION(FlashRegs,"FlashRegsFile");
volatile struct FLASH_REGS FlashRegs;
#pragma DATA_SECTION(XintfRegs,"XintfRegsFile");
volatile struct XINTF_REGS XintfRegs;
#pragma DATA_SECTION(XIntruptRegs,"XIntruptRegsFile");
volatile struct XINTRUPT_REGS XIntruptRegs;
// 闭环控制迭代变量
int v_ref = 0x8000; // Q0
int v_Kp, v_Ki, v_Kd; // Q15
long v_a1, v_a2, v_a3; // Q15
int e0 = 0, e1 = 0, e2 = 0; // Q0
long u1 = 0; // Q0
int v_sample = 0x8000; // Q0
long lbound, hbound; // Q15
int i_ref = 0x8000; // Q0
int i_Kp, i_Ki, i_Kd; // Q15
long i_a1, i_a2, i_a3; // Q15
int i_sample = 0x8000; // Q0
long phase_shifting;
long a1, a2, a3;
// 斩波相关
unsigned int chopper_pwm_period = 0x1D4C; // Q0
unsigned int chopper_pwm_duty = 0.5 * 0x8000; // Q15
unsigned long chopper_pwm_ubound = 0;
unsigned long chopper_pwm_lbound = 0;
unsigned long chopper_pwm_bitfreq = 0;
unsigned long chopper_pwm_freq = 0;
unsigned int p_sample = 0;
unsigned int d_sample = 0;
/*
unsigned int *pwm_frequency_table = pwm_frequency_table1;
unsigned int *pwm_prescale_table = pwm_prescale_table1;
*/
// 软启动相关
//unsigned int softstart_flag = 0;
unsigned int running_status = 0; // 0:前级软启动 1:后级软启动 2:正常运行
unsigned int waiting_count = 0;
/*
// PWM 采样值-计数器值 查找表1
#pragma DATA_SECTION(pwm_frequency_table1,"DATA_TABLE");
unsigned int pwm_frequency_table1[1024];
// PWM 采样值-预分频值 查找表1
#pragma DATA_SECTION(pwm_prescale_table1,"DATA_TABLE");
unsigned int pwm_prescale_table1[1024];
// PWM 采样值-计数器值 查找表2
#pragma DATA_SECTION(pwm_frequency_table2,"DATA_TABLE");
unsigned int pwm_frequency_table2[1024];
// PWM 采样值-预分频值 查找表2
#pragma DATA_SECTION(pwm_prescale_table2,"DATA_TABLE");
unsigned int pwm_prescale_table2[1024];
*/
// 运行时间(s)
unsigned long run_time = 0;
// 工艺配方(工艺曲线)
RECIPE recipe;
// 设备状态
unsigned int status = 0x0004;
Uint16 Np = 5, Nn = 3, Fp = 1000, Fn = 500, Dp = 60, Dn = 30, Tp = 300, Tn = 300, cDp = 2000, cDn = 2000, tDp = 30, tDn = 30, cTp = 10, cTn = 10;
Uint16 sNp = 5, sNn = 3, sFp = 1000, sFn = 500, sDp = 2000, sDn = 2000, sTp = 300, sTn = 300;
Uint16 ff = 0;
//unsigned char codes0, codes1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -