資源簡介
這是一份基于DSP28335的直流電機雙閉環調速系統程序,在CCS6.0上調試通過!

代碼片段和文件信息
#include?“DSP2833x_Device.h“?
#define?DELAY_US(A)??DSP28x_usDelay(((((long?double)?A?*?1000.0L)?/?(long?double)CPU_RATE)?-?9.0L)?/?5.0L)
#define?CPU_RATE????6.667L?
#define?ADC_usDELAY??5000L
?void?ADC_cal(void);
?extern?void?DSP28x_usDelay(Uint32?Count);
void?En_ADCModeClk(void)??//開啟ADC模塊轉換時鐘
{
?EALLOW;
?SysCtrlRegs.PCLKCR0.bit.ADCENCLK?=?1;
?EDIS;
}
void?En_ADCHighSpeedClk(void)
{
?EALLOW;
?SysCtrlRegs.HISPCP.bit.HSPCLK?=?3;
?EDIS;
}
//---------------------------------------------------------------------------
//?InitAdc:
//---------------------------------------------------------------------------
//?This?function?initializes?ADC?to?a?known?state.
//
void?Init_ADC(void)
{
????extern?void?DSP28x_usDelay(Uint32?Count);
????//?*IMPORTANT*
//?The?ADC_cal?function?which??copies?the?ADC?calibration?values?from?TI?reserved
//?OTP?into?the?ADCREFSEL?and?ADCOFFTRIM?registers?occurs?automatically?in?the
//?Boot?ROM.?If?the?boot?ROM?code?is?bypassed?during?the?debug?process?the
//?following?function?MUST?be?called?for?the?ADC?to?function?according
//?to?specification.?The?clocks?to?the?ADC?MUST?be?enabled?before?calling?this
//?function.
//?See?the?device?data?manual?and/or?the?ADC?Reference
//?Manual?for?more?information.
????EALLOW;
SysCtrlRegs.PCLKCR0.bit.ADCENCLK?=?1;
ADC_cal();
EDIS;
????//?To?powerup?the?ADC?the?ADCENCLK?bit?should?be?set?first?to?enable
????//?clocks?followed?by?powering?up?the?bandgap?reference?circuitry?and?ADC?core.
????//?Before?the?first?conversion?is?performed?a?5ms?delay?must?be?observed
//?after?power?up?to?give?all?analog?circuits?time?to?power?up?and?settle
????//?Please?note?that?for?the?delay?function?below?to?operate?correctly?the
//?CPU_CLOCK_SPEED?define?statement?in?the?DSP2833x_Examples.h?file?must
//?contain?the?correct?CPU?clock?period?in?nanoseconds.
????AdcRegs.ADCTRL3.all?=?0x00E0;??//?Power?up?bandgap/reference/ADC?circuits
????DELAY_US(ADC_usDELAY);?????????//?Delay?before?converting?ADC?channels
}
void?Confi_ADCMode(void)
{?
?EALLOW;
?AdcRegs.ADCTRL3.bit.ADCCLKPS?=?0;
?AdcRegs.ADCTRL3.bit.SMODE_SEL?=?0;??//adc模數轉換時鐘設定
?
?//AdcRegs.ADCTRL1.bit.SUSMOD?=?2;
?AdcRegs.ADCTRL1.bit.CONT_RUN?=?0;??//continuous?conversion?mode
?AdcRegs.ADCTRL1.bit.SEQ_OVRD?=?0;??//
?AdcRegs.ADCTRL1.bit.SEQ_CASC?=?0;
?AdcRegs.ADCTRL2.bit.EPWM_SOCB_SEQ?=?0;
?AdcRegs.ADCTRL2.bit.EPWM_SOCA_SEQ1?=?0;
?AdcRegs.ADCTRL2.bit.EXT_SOC_SEQ1?=?0; ??
?AdcRegs.ADCTRL2.bit.RST_SEQ2?=?0;
?AdcRegs.ADCTRL2.bit.SOC_SEQ2?=?0;
?AdcRegs.ADCTRL2.bit.INT_ENA_SEQ2?=?0;
?AdcRegs.ADCTRL2.bit.INT_MOD_SEQ2?=?0;
?AdcRegs.ADCTRL2.bit.EPWM_SOCB_SEQ2?=?0;???//無用位設置
?AdcRegs.ADCTRL2.bit.RST_SEQ1?=?1;
?AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1?=?1;
?AdcRegs.ADCTRL2.bit.INT_MOD_SEQ1?=?0;
?AdcRegs.ADCST.bit.INT_SEQ1_CLR?=?1;
?AdcRegs.ADCMAXCONV.bit.MAX_CONV1?=?0;
?AdcRegs.ADCCHSELSEQ1.bit.CONV00?=?0;????//模擬量入口通道設置
?EDIS;
}
void?C
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-05-23?21:06??DSP28335_Motor_loopControl\
?????文件????????3947??2012-03-22?10:08??DSP28335_Motor_loopControl\28335_RAM_lnk.cmd
?????文件?????????705??2012-11-28?13:57??DSP28335_Motor_loopControl\DSP28335_ADC_text.c
?????文件????????3756??2013-01-11?16:32??DSP28335_Motor_loopControl\DSP28335_ECanb_text.c
?????文件????????4535??2012-11-23?14:40??DSP28335_Motor_loopControl\DSP28335_EPwm.c
?????文件????????1244??2012-11-19?14:02??DSP28335_Motor_loopControl\DSP28335_EPwmChopper.c
?????文件????????3249??2012-11-06?11:18??DSP28335_Motor_loopControl\DSP28335_Gpio.c
?????目錄???????????0??2013-05-23?21:07??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\
?????文件????????3072??2013-01-17?16:17??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\FILE.CDX
?????文件????????1264??2013-01-17?16:17??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\FILE.DBF
?????文件????????1477??2013-01-17?16:17??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\FILE.FPT
?????文件??????408064??2013-01-17?16:17??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\SYMBOL.CDX
?????文件??????341074??2013-01-17?16:17??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\SYMBOL.DBF
?????文件??????586042??2013-01-17?16:17??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.CS_\SYMBOL.FPT
?????文件????????7640??2013-05-29?09:48??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.paf2
?????文件????????1480??2013-01-15?10:14??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.pjt
?????文件????????6138??2013-05-29?09:48??DSP28335_Motor_loopControl\DSP28335_Motor_loopControl.sbl
?????文件?????????617??2012-11-06?08:59??DSP28335_Motor_loopControl\DSP28335_SYSCLKCtrl.c
?????文件????????1308??2012-11-05?09:00??DSP28335_Motor_loopControl\DSP28335_TIME1_TEXT.C
?????文件????????1233??2012-11-20?16:35??DSP28335_Motor_loopControl\DSP28335_Timer0-1.c
?????文件????????5782??2013-01-17?16:16??DSP28335_Motor_loopControl\DSP28335_eCAN.c
?????文件????????3580??2012-11-23?14:35??DSP28335_Motor_loopControl\DSP28335_eCap.c
?????文件????????1434??2007-09-26?10:23??DSP28335_Motor_loopControl\DSP2833x_ADC_cal.asm
?????文件???????10491??2012-11-26?20:53??DSP28335_Motor_loopControl\DSP2833x_Adc.h
?????文件????????3277??2008-09-24?00:29??DSP28335_Motor_loopControl\DSP2833x_CodeStartBranch.asm
?????文件????????5905??2012-03-11?19:54??DSP28335_Motor_loopControl\DSP2833x_CpuTimers.h
?????文件???????13342??2012-03-09?20:04??DSP28335_Motor_loopControl\DSP2833x_DMA.h
?????文件????????6887??2012-03-11?09:15??DSP28335_Motor_loopControl\DSP2833x_DefaultISR.h
?????文件????????2701??2007-09-26?10:23??DSP28335_Motor_loopControl\DSP2833x_DevEmu.h
?????文件????????6050??2012-11-26?20:53??DSP28335_Motor_loopControl\DSP2833x_Device.h
?????文件????????1993??2007-09-26?10:23??DSP28335_Motor_loopControl\DSP2833x_Dma_defines.h
............此處省略87個文件信息
- 上一篇:TensorFlow Tutorial
- 下一篇:vivado時序菜鳥學習
評論
共有 條評論