C2000 进入低功耗所需的配置
来源:互联网 发布:品茗软件怎么用 编辑:程序博客网 时间:2024/05/24 15:42
1. 进入低功耗的条件:如果外部频率输入信号持续一段时间为0,那么F2802x进入低功耗;
2. 进入低功耗之前,需要进入如下操作:
a. 将其他中断UART/ADC(PWM)中断disable;
EALLOW;
EPwm2Regs.ETSEL.bit.INTEN =0; // disable EPWM1INT generation
SciaRegs.SCICTL2.bit.RXBKINTENA =0;//disableRXRDY/BRKDT interrupt
EDIS;
PieCtrlRegs.PIEIER9.bit.INTx1=0; // PIE Group 9,INT1
PieCtrlRegs.PIEIER9.bit.INTx2=0; // PIE Group 9,INT2
PieCtrlRegs.PIEIER3.bit.INTx2 =0; // EPWM2_INT
PieCtrlRegs.PIEACK.all =PIEACK_GROUP1| PIEACK_GROUP3 | PIEACK_GROUP9;
3. 调用中断进入函数,为了获得最优化的功耗,需要将Flash设置为休眠模式,所以中断进入函数是放在RAM里面执行的。
if(SysCtrlRegs.PLLSTS.bit.MCLKSTS != 1) // Only enter lowpower mode when PLL is not in limp mode.
{
EALLOW;
FlashRegs.FPWR.all =0x0001; //Pump and bank standby
//DisableWatchdog
SysCtrlRegs.WDCR= 0x006F;
EDIS;
asm(" RPT #10 ||NOP");
IDLE_EN;
}
4. 中断复位程序
interrupt void WakeIntISR(void)
{
// Enable thewatchdog
EALLOW;
SysCtrlRegs.WDCR = 0x002F;
FlashRegs.FPWR.all =0x0003; //Pump and bank active
EDIS;
asm(" RPT #15 ||NOP");
// Acknowledgeinterrupt to recieve more interrupts from PIE group 1
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
EINT;
}
5. 低功耗唤醒以后,需要重新对系统参数进行初始化,另外,需要将disable的中断重新打开。如下所示。
EALLOW;
EPwm2Regs.ETSEL.bit.INTEN =1; // Enable EPWM1INT generation
SciaRegs.SCICTL2.bit.RXBKINTENA =1;//EnableRXRDY/BRKDT interrupt
EDIS;
//Turn on all interrupts
PieCtrlRegs.PIEIER9.bit.INTx1=1; // PIE Group 9,INT1
PieCtrlRegs.PIEIER9.bit.INTx2=1; // PIE Group 9, INT2
PieCtrlRegs.PIEIER3.bit.INTx2 =1; // EPWM2_INT
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1 | PIEACK_GROUP3 | PIEACK_GROUP9;
- C2000 进入低功耗所需的配置
- 如何配置C2000进入低功耗模式
- STM8L的低功耗模式的配置
- 进入低功耗状态要注意的问题
- Spartan-6 低功耗模式的配置
- STM32低功耗配置
- 低功耗的设置
- stm32f030c8t6 MCU进入低功耗模式
- 低功耗版STM8L051的一个诡异配置
- 影响低功耗模式功耗的因素
- 低功耗板子测试功耗的方法
- KL25进入低功耗模式无法退出后的芯片救活
- 如何让End Device进入低功耗状态,休眠时间是如何设定的?
- 小记:关于STM32进入低功耗模式后无法烧写程序的解决办法
- MSP430的低功耗探讨
- 低功耗蓝牙的基础
- zstack低功耗的设置
- 低功耗的风格和
- 闭包(一)
- MySQL性能优化的最佳21条经验
- ElasticSearch-分页查询
- 关于jqgrid使用记录
- Java异常概述
- C2000 进入低功耗所需的配置
- 关于python编码和magic变量和函数
- 反射如何破坏单例模式
- jQuery.ready()函数仿写,与window.onload的区别
- Android中的EditText默认时不弹出软键盘的方法
- Android自动化测试之Monkey和MonkeyRunner
- 检查数组是否包含某个值
- 怨
- POI实现EXCEL下拉列表