完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
有以下以后望解答:
|
|
相关推荐
7个回答
|
|
|
低功耗休眠可以考虑使用LowPower_Sleep;
freertos可以用于ble开发,但目前没有出BLE的freertos单独库的计划。你可以创建一个比IDLEtask高一优先级的任务,用来一直运行TMOS_SystemProcess; CH583在使用RTOS时无法使用硬件压栈,所以不可能。 |
|
|
|
|
|
LowPower_Sleep我试了,无法唤醒
|
|
|
|
|
|
你可以看看EVT里面PM的例子,演示了4种低功耗模式下IO唤醒的写法。
|
|
|
|
|
|
我就是直接复制的EVT里面的代码。 现象就是上面描述的那样。
目前尝试用裸机例程中的休眠函数,仅LowPower_Shutdown(0); 可以正常睡眠并且成功唤醒。其他方式均不能唤醒。但此方式唤醒后task会莫名其妙的不执行或者出其他什么问题了,两个task原先是串口打印的,唤醒后没有输出。但在创建task的函数前放一个延时,唤醒后又可以正常半秒钟。 |
|
|
|
|
|
你在使用蓝牙功能开启睡眠,直接宏定义HAL_SLEEP开启睡眠就可以了。唤醒是蓝牙TMOS任务处理的,有任务来临则唤醒。可以参考下面的睡眠函数。
可以先使用PM的例程看一下睡眠是如何跑的,然后使用peripheral的例程结合蓝牙再做尝试。 |
|
|
|
|
|
可能我表述不太清除。睡眠测试是在evt中freertos的例程中做的,我只是新建了一个task用于定时休眠,其他的没有动。休眠代码是直接从evt的PM例程中复制的。出现了我帖子中第一条的问题。
|
|
|
|
|
|
freeRTOS中自带IDLE TASK,通过设置宏configUSE_TICKLESS_IDLE不为0,启用对应的函数接口portSUPPRESS_TICKS_AND_SLEEP,然后通过宏定义将portSUPPRESS_TICKS_AND_SLEEP定义为你自己的睡眠函数。
参考蓝牙工程里面的睡眠,是因为有些模块电源睡眠时是关闭的,RAM是否保持也是有区别的,你需要根据自己的情况来决定如何睡眠。 |
|
|
|
|
只有小组成员才能发言,加入小组>>
326 浏览 0 评论
CH582M HOST发送数到设备后,提交IN一直是2A是什么问题?
848 浏览 0 评论
1452 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
3413 浏览 2 评论
2820 浏览 1 评论
安卓手机支持外接otg扩展坞 然后使用ch340+ch9329控制电脑吗
1808浏览 1评论
1459浏览 1评论
336浏览 0评论
CH582M HOST发送数到设备后,提交IN一直是2A是什么问题?
859浏览 0评论
467浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 15:52 , Processed in 1.481282 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1077