• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术讨论 > CC3200深度睡眠被系统任务切换中断唤醒,怎么解决?

CC3200深度睡眠被系统任务切换中断唤醒,怎么解决?

录入:edatop.com     点击:
想问一下CC3200,CC3200深度睡眠被系统任务切换中断唤醒,怎么解决?
这个休眠函数,会被所有的中断唤醒,我把它放在freertos下,发现总是不能保持睡眠。猜测是因为不断被系统任务切换中断唤醒。我看数据表deepsleep也是可以设置唤醒源的,但是API貌似并没有提供这样的设置函数。这种问题有什么解决办法吗?
//*****************************************************************************
//
//! Puts the system into Deep Sleep power mode.
//!
//! This function puts the system into Deep Sleep power mode. System exits the
//! power state on any one of the available interrupt. On exit from deep
//! sleep the function returns to the calling function with all the processor
//! core registers retained.
//!
//! \return None.
//
//*****************************************************************************
void
PRCMDeepSleepEnter()
{
//
// Set bandgap duty cycle to 1
//
HWREG(HIB1P2_BASE + HIB1P2_O_BGAP_DUTY_CYCLING_EXIT_CFG) = 0x1;
//
// Enable DSLP in cortex
//
HWREG(0xE000ED10)|=1<<2;
//
// Request Deep Sleep
//
CPUwfi();
//
// Disable DSLP in cortex before
// returning to the caller
//
HWREG(0xE000ED10) &= ~(1<<2);
}

请参照一下例程idle_profile, 里面有指明如何调用middleware 去操作LPDS模式。

上一篇:通信、网络技术会议
下一篇:CC3200Z在osi.h函数的具体使用

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图