日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] 根據(jù)《STM32中文參考手冊(cè)》描述,STM32的低功耗模式有三種:睡眠模式,停止模式,待機(jī)模式。(有些資料說其實(shí)只有兩種模式,不存在睡眠模式一說)。其中待機(jī)模式可實(shí)現(xiàn)系統(tǒng)的最低功耗,所以本來想采用

根據(jù)《STM32中文參考手冊(cè)》描述,STM32的低功耗模式有三種:睡眠模式,停止模式,待機(jī)模式。(有些資料說其實(shí)只有兩種模式,不存在睡眠模式一說)。其中待機(jī)模式可實(shí)現(xiàn)系統(tǒng)的最低功耗,所以本來想采用該模式。但是《STM32中文參考手冊(cè)》提到從待機(jī)模式喚醒后的代碼執(zhí)行等同于復(fù)位后的執(zhí)行(采樣啟動(dòng)模式引腳、讀取復(fù)位向量等),板子接了屏,再快再快也需要時(shí)間去加載界面,所以速度還是慢了。之后采用嘗試采用停止模式,圖1為停止模式的進(jìn)入和退出方法。

圖1
根據(jù)手冊(cè)和開發(fā)板給的源碼,直接實(shí)現(xiàn)停止模式,但是發(fā)現(xiàn)退出時(shí)就發(fā)生死機(jī)現(xiàn)象,并沒有進(jìn)入恢復(fù)正常,只執(zhí)行了中斷函數(shù)中一個(gè)或者兩個(gè)語句(是隨機(jī)的)。

看例程,度娘等走了一圈,表現(xiàn)出來的原因應(yīng)該是這樣的,由于THUMB指令不支持匯編內(nèi)聯(lián),所以采用如下方法實(shí)現(xiàn)執(zhí)行匯編指令WFI,創(chuàng)建了一個(gè)WFI_SET()函數(shù),其函數(shù)原型:
__asm void WFI_SET(void)
{
WFI;
}
表現(xiàn)出來的原因是:被Sys_Sleep()函數(shù)調(diào)用的時(shí)候,并沒有在編譯時(shí)把WFI_SET()的內(nèi)容inline到Sys_Sleep()函數(shù)里面去,而是一個(gè)普通的函數(shù)在運(yùn)行時(shí)被調(diào)用,出現(xiàn)了死機(jī)現(xiàn)象。后來將WFI_SET()函數(shù)修改為:
__asm void __inline WFI_SET(void)
{
WFI;
}
問題解決。

但根本原因是不是跳出WFI_SET()函數(shù)出的錯(cuò),還是其他原因,后續(xù)進(jìn)一步確認(rèn)。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉