This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3235S:CC3235S、TI-RTOS -不能及时从 LPDS 唤醒

Guru**** 2553450 points
Other Parts Discussed in Thread: CC3235S

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1182683/cc3235s-cc3235s-ti-rtos---do-not-wake-up-from-lpds-on-time

器件型号:CC3235S

你(们)好

我尝试使用以下实现在 CC3235S 上实现 LPDS  

power_enablePolicy()

UART2_rxDisable (g_uart1_handle);

uint32_t Timeout = HIBINTERVAL * 1000;

struct timespec abstime;

Clock_gettime (clock_realtime、abstime);

if (abstime.tV_nsec < 0)

    abstime.tv_sec =超时;

    返回(SEM_timedwait (&APP_CB.WobtnSlepSem、abstime));

 

/*添加等待时间*/

abstime.tv_sec +=超时/1000;

abstime.tV_nsec +=(超时% 1000)* 1000000;

abstime.tv_sec +=(abstime.tv_nsec / 1000000000);

abstime.tV_nsec = abstime.tV_nsec % 1000000000;

SEM_timedwait (&APP_CB.WobtnSlepSem、abstime);

UART2_rxEnable (g_uart1_handle);

和 syscfg 文件

但是、在 HIBINTERVAL 秒后器 件不会在计时器上唤醒、而是仅在发布信号量 APP_CB.WoBtnSlepSem 时器件才会永久休眠。 当将 syscfg 更改为器件下方的配置后、器件开始在 HIBINTERVAL  秒后通过计时器唤醒时、syscfg 文件中的区别在于 启用/禁用启用 GPIO 唤醒 LPDS。

这是预期行为吗? 或者、我的实施中 是否有错误的地方?

此致 Tomas

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Tomas、

    假期结束后、专家将为您的请求提供帮助。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    当使用睡眠模式而不是 SEM_timedwait 时、它是否起作用(即唤醒计时器)?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    与睡眠模式不同、 发现更改 GPIO 唤醒源时(GPIO24错误)、计时器唤醒开始工作、并且可以使用在 GPIO 中断上唤醒  

    gpioFn (){

      SEM_POST (&APP_CB.WobtnSlepSem);

    因此、在使用错误的 GPIO 源时可能无法正常工作。  一个只能有一个唤醒源、对吧?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、只有一个 GPIO 可用作 LPDS 的唤醒源。