你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
Susan Yang:C2000Ware内有相关的LPM例程 C:\ti\c2000\C2000Ware_1_00_05_00\device_support\f2833x\examples,您可以参考一下。
另外C2000 系列产品并不是以低功耗为主要特点,但是可以从以下几个方面考虑降低系统的功耗:
(1)MCU 的功耗与运行频率存在很大的关系,您可以根据需求合理设置主频的范围;
(2)及时关断不使用的外设模块;
(3)尽量使 MCU 更多的运行在低功耗模式下;
(4)提高代码执行效率;
你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
user5196261:
回复 Susan Yang:
如何通过代码关断不使用的外设模块,谢谢
你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
Susan Yang:
回复 user5196261:
您可以在InitPeripheralClocks内进行操作
你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
Susan Yang:
回复 user5196261:
// // InitPeripheralClocks - This function initializes the clocks to the// peripheral modules. First the high and low clock prescalers are set // Second the clocks are enabled to each peripheral. To reduce power, leave// clocks to unused peripherals disabled // // Note: If a peripherals clock is not enabled then you cannot // read or write to the registers for that peripheral // voidInitPeripheralClocks(void) {EALLOW;//// HISPCP/LOSPCP prescale register settings, normally it will be set to// default values//SysCtrlRegs.HISPCP.all = 0x0001;SysCtrlRegs.LOSPCP.all = 0x0002;//// XCLKOUT to SYSCLKOUT ratio.By default XCLKOUT = 1/4 SYSCLKOUT// XTIMCLK = SYSCLKOUT/2//XintfRegs.XINTCNF2.bit.XTIMCLK = 1;//// XCLKOUT = XTIMCLK/2//XintfRegs.XINTCNF2.bit.CLKMODE = 1;//// Enable XCLKOUT//XintfRegs.XINTCNF2.bit.CLKOFF = 0;//// Peripheral clock enables set for the selected peripherals.// If you are not using a peripheral leave the clock off// to save on power.//// Note: not all peripherals are available on all 2833x derivates.// Refer to the datasheet for your particular device.//// This function is not written to be an example of efficient code.//SysCtrlRegs.PCLKCR0.bit.ADCENCLK = 1;// ADC////*IMPORTANT*// The ADC_cal function, whichcopies 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.//ADC_cal();SysCtrlRegs.PCLKCR0.bit.I2CAENCLK = 1;// I2CSysCtrlRegs.PCLKCR0.bit.SCIAENCLK = 1;// SCI-ASysCtrlRegs.PCLKCR0.bit.SCIBENCLK = 1;// SCI-BSysCtrlRegs.PCLKCR0.bit.SCICENCLK = 1;// SCI-CSysCtrlRegs.PCLKCR0.bit.SPIAENCLK = 1;// SPI-ASysCtrlRegs.PCLKCR0.bit.MCBSPAENCLK = 1; // McBSP-ASysCtrlRegs.PCLKCR0.bit.MCBSPBENCLK = 1; // McBSP-BSysCtrlRegs.PCLKCR0.bit.ECANAENCLK=1;// eCAN-ASysCtrlRegs.PCLKCR0.bit.ECANBENCLK=1;// eCAN-BSysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0;// Disable TBCLK within the ePWMSysCtrlRegs.PCLKCR1.bit.EPWM1ENCLK = 1;// ePWM1SysCtrlRegs.PCLKCR1.bit.EPWM2ENCLK = 1;// ePWM2SysCtrlRegs.PCLKCR1.bit.EPWM3ENCLK = 1;// ePWM3SysCtrlRegs.PCLKCR1.bit.EPWM4ENCLK = 1;// ePWM4SysCtrlRegs.PCLKCR1.bit.EPWM5ENCLK = 1;// ePWM5SysCtrlRegs.PCLKCR1.bit.EPWM6ENCLK = 1;// ePWM6SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1;// Enable TBCLK within the ePWMSysCtrlRegs.PCLKCR1.bit.ECAP3ENCLK = 1;// eCAP3SysCtrlRegs.PCLKCR1.bit.ECAP4ENCLK = 1;// eCAP4SysCtrlRegs.PCLKCR1.bit.ECAP5ENCLK = 1;// eCAP5SysCtrlRegs.PCLKCR1.bit.ECAP6ENCLK = 1;// eCAP6SysCtrlRegs.PCLKCR1.bit.ECAP1ENCLK = 1;// eCAP1SysCtrlRegs.PCLKCR1.bit.ECAP2ENCLK = 1;// eCAP2SysCtrlRegs.PCLKCR1.bit.EQEP1ENCLK = 1;// eQEP1SysCtrlRegs.PCLKCR1.bit.EQEP2ENCLK = 1;// eQEP2SysCtrlRegs.PCLKCR3.bit.CPUTIMER0ENCLK = 1; // CPU Timer 0SysCtrlRegs.PCLKCR3.bit.CPUTIMER1ENCLK = 1; // CPU Timer 1SysCtrlRegs.PCLKCR3.bit.CPUTIMER2ENCLK = 1; // CPU Timer 2SysCtrlRegs.PCLKCR3.bit.DMAENCLK = 1;// DMA ClockSysCtrlRegs.PCLKCR3.bit.XINTFENCLK = 1;// XTIMCLKSysCtrlRegs.PCLKCR3.bit.GPIOINENCLK = 1;// GPIO input clockEDIS; }
你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
user5196261:
回复 Susan Yang:
谢谢
你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
Susan Yang:
回复 user5196261:
很高兴能帮到您!
你好,我现在开发TMS320F28335,需要考虑功耗问题,要关掉一些不用的模块,请问如何用代码实现?谢谢
user5949087:
回复 user5196261:
您好,请问,您怎样配置低功耗的,我现在也在配置,老不成功