你好,我這邊需要讓CH573在外部中斷到來(lái)時(shí)及時(shí)和外部芯片通訊,之前沒(méi)有開啟HAL_SLEEP,通訊非常正常,加上數(shù)據(jù)準(zhǔn)備的時(shí)間,也就37us就可以響應(yīng)了。
但是加上了HAL_SLEEP后就不能正常工作了。
程序配置了下降沿中斷,還調(diào)用了PWR_PeriphWakeUpCfg( ENABLE, RB_SLP_GPIO_WAKE, Edge_LongDelay );
我在CH57X_LowPower的入口和所有return前面加入IO操作來(lái)檢查CH57X_LowPower的執(zhí)行時(shí)間,發(fā)現(xiàn)GPIO中斷可以快速被執(zhí)行,但是中斷執(zhí)行完后CH57X_LowPower不會(huì)退出,約11ms后才退出,讓主循環(huán)可以運(yùn)轉(zhuǎn),向TMOS發(fā)事件。但是過(guò)這么久外設(shè)已經(jīng)超時(shí),無(wú)法正常工作。
請(qǐng)問(wèn)有沒(méi)有辦法讓中斷觸發(fā)后立刻退出CH57X_LowPower并返回主循環(huán)?我測(cè)試過(guò)使用Edge_ShortDelay,但系統(tǒng)會(huì)進(jìn)入重啟循環(huán),暫時(shí)沒(méi)搞清什么原因。