CH582休眠問題

我用三塊ch582芯片,節(jié)點(diǎn)ABC,節(jié)點(diǎn)A發(fā)送給節(jié)點(diǎn)B,節(jié)點(diǎn)B發(fā)送給節(jié)點(diǎn)C。加入了睡眠。

目前有個(gè)問題就是,節(jié)點(diǎn)A第一次發(fā)送的信息,要等節(jié)點(diǎn)A發(fā)送第二次信息后后節(jié)點(diǎn)B才能第一次發(fā)的信息收到。節(jié)點(diǎn)C收到節(jié)點(diǎn)A第一次發(fā)送的信息要等節(jié)點(diǎn)A發(fā)送第三次信息時(shí)才能收到。


熱門產(chǎn)品 : USB3.0 HUB控制器:CH634

是基于哪幾個(gè)例程添加代碼后做的測試?

sleep休眠期間,32M停振,無線收發(fā)機(jī)無法工作,無法通過發(fā)送射頻信號(hào)的方式去喚醒接收方MCU。

B/C可以收到包,要么是A發(fā)包的瞬間,B/C剛好處于喚醒工作的狀態(tài),有機(jī)會(huì)開啟接收掃描窗口;要么是有類似BLE連接、mesh的朋友-低功耗節(jié)點(diǎn)連接等之類的機(jī)制。


用的自配網(wǎng)例程來搞得。

相關(guān)代碼:

?

PRINT("sleep?mode?sleep?\n");
????????tmos_stop_task(halTaskID,?HAL_REG_INIT_EVENT);??//默認(rèn)2分鐘一次的校準(zhǔn)先暫停
????????DelayMs(5);

????????RTC_TRIGFunCfg(32768?*?10);
????????PWR_PeriphWakeUpCfg(ENABLE,?RB_SLP_RTC_WAKE,?Long_Delay);/*?使能RTC中斷喚醒源?*/

????????PFIC_EnableIRQ(RTC_IRQn);/*?使能RTC中斷?*/
????????/*?注意當(dāng)主頻為80M時(shí),Sleep睡眠喚醒中斷不可調(diào)用flash內(nèi)代碼?*/

????????LowPower_Sleep(RB_PWR_RAM30K?|?RB_PWR_RAM2K);?/*?只保留30+2K?SRAM?供電?*/

????????HSECFG_Current(HSE_RCur_100);?/*?降為額定電流(低功耗函數(shù)中提升了HSE偏置電流)?*/
????????PFIC_DisableIRQ(RTC_IRQn);

????????DelayMs(5);
????????PRINT("wake..?\n");
????????DelayMs(20);
????????tmos_set_event(halTaskID,?HAL_REG_INIT_EVENT);??????//先校準(zhǔn)RF,再開廣播
////**********
???????tmos_start_task(App_TaskID,?APP_NODE_TEST_EVT,?4800);??????//發(fā)送時(shí)長1600=1s




如上解釋,RTC喚醒前的休眠階段,是無法收包的。

mesh協(xié)議中有設(shè)計(jì)朋友-低功耗節(jié)點(diǎn)連接功能,朋友節(jié)點(diǎn)會(huì)代收發(fā)給低功耗節(jié)點(diǎn)的消息包,低功耗節(jié)點(diǎn)喚醒后第一時(shí)間向朋友節(jié)點(diǎn)拉取消息。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频