介紹
RA系列能夠?qū)崿F(xiàn)休眠模式下的超低功耗,以RA2E1為例,在常溫下的休眠功耗只有約0.25uA(典型值)。非常適合做電池供電應(yīng)用或手持設(shè)備應(yīng)用。由于芯片在此狀態(tài)下的時(shí)鐘是處于關(guān)閉狀態(tài)(不包括32K副時(shí)鐘),芯片無(wú)法做串口接收喚醒(除UART0的Snooze模式外)。下列方法能夠簡(jiǎn)易地做軟件配置來(lái)實(shí)現(xiàn)任意串口接收喚醒。
原理是在休眠進(jìn)入前預(yù)先將RXD腳配置為IRQx,然后進(jìn)入休眠,由于RA系列的芯片大部分都是RXD&IRQ復(fù)用腳,無(wú)需做任何外部硬件線路設(shè)計(jì)就能夠簡(jiǎn)單的用軟件來(lái)切換UART&IRQ,從而實(shí)現(xiàn)串口通訊和休眠喚醒功能。
內(nèi)容&原理
演示的例程采用EK-RA2E1評(píng)估板,UART1(P401, P402)分別配置為T(mén)XD1&RXD1。方法先通過(guò)FSP將UART1配置好并作正常通訊使用。當(dāng)需要進(jìn)入休眠狀態(tài)前,將UART1關(guān)閉,并釋放RXD1管腳,然后通過(guò)配置IRQ4相關(guān)的寄存器來(lái)將RXD1腳切換到IRQ4模式下進(jìn)入休眠,當(dāng)對(duì)方發(fā)送任何串口數(shù)據(jù)時(shí)(只做喚醒,無(wú)法接收到有效數(shù)據(jù)),start bit的低電平就能夠喚醒MCU,然后MCU再將IRQ4腳重新配置為RXD1。例程中采用了簡(jiǎn)單的SW System Reset方式做系統(tǒng)重啟來(lái)將RXD1重置為UART。
具體配置
01
UART1配置
UART1的配置只需要按照應(yīng)用需求配置做就可以,但必須留意所選的RXD腳必須跟IRQ是復(fù)用的,以便做功能切換。

02
Low Power Mode配置
LPM配置為SW Standby Mode,并在Wake Sources里面將IRQ4(RXD1)打勾

03
IRQ軟件切換
IRQ由于只是做中斷喚醒功能,無(wú)需配置任何中斷回調(diào)函數(shù)。
進(jìn)入休眠前的切換流程:
a. 首先關(guān)閉UART1,釋放P402管腳
b.將P402通過(guò)PmnPFS配置ISEL (1)& PIDR (1) = 0x4002
c.Disable IRQ4,然后配置IRQ4的控制功能IRQ Control Register
d.置啟IRQ4
e.進(jìn)入休眠
f. 休眠喚醒后,通過(guò)NVIC_SystemReset() 做芯片復(fù)位,回復(fù)到UART1啟動(dòng)狀態(tài)

只需通過(guò)以上簡(jiǎn)單的底層寄存器配置步驟。就能夠?qū)崿F(xiàn)UART接收喚醒的功能。但由于芯片在喚醒后需要一段時(shí)間做系統(tǒng)時(shí)鐘啟動(dòng),而且串口在這段時(shí)間是處于未配置/關(guān)閉狀態(tài),當(dāng)前上位機(jī)發(fā)送的喚醒數(shù)據(jù)是無(wú)法做有效數(shù)據(jù)接收的。需要等MCU啟動(dòng)完成后,或者喚醒直接切換到UART1后,通訊數(shù)據(jù)才能夠正常接收。
審核編輯:劉清
-
串口通訊
+關(guān)注
關(guān)注
2文章
266瀏覽量
26373 -
電池供電
+關(guān)注
關(guān)注
0文章
455瀏覽量
23287 -
UART接口
+關(guān)注
關(guān)注
0文章
124瀏覽量
16370 -
回調(diào)函數(shù)
+關(guān)注
關(guān)注
0文章
95瀏覽量
12195
發(fā)布評(píng)論請(qǐng)先 登錄
AT32F系列 PWC待機(jī)喚醒腳喚醒Standby
MM32 在STOP模式下通過(guò)UART喚醒
請(qǐng)問(wèn)AD9265在Standby模式下的喚醒時(shí)間是多少?
SPC58ECx使用WKUP引腳從待機(jī)狀態(tài)喚醒
使用HAL庫(kù)RTC時(shí)鐘喚醒低功耗STOP和STANDBY模式
采用RTC WakeUP的方式對(duì)STM32F4xx StandBy模式進(jìn)行喚醒
以StandBy待機(jī)模式為例進(jìn)行組件的使用分析
【RA4M2設(shè)計(jì)挑戰(zhàn)賽】LPM_MODE_SLEEP -RTC ALARM定時(shí)喚醒
RTC的alarm中斷事件能否喚醒standby或者shutdown模式?
AT32F系列PWC待機(jī)喚醒腳喚醒Standby的使用方法
AD9265在Standby模式下的喚醒時(shí)間是多少?
STM32CubeMX低功耗模式——待機(jī)模式(standby)RTC喚醒
STM32 低功耗待機(jī)(STANDBY) 和關(guān)機(jī)(SHUTDOWN) 專(zhuān)用管腳喚醒 (EWUP)
STM32F1系列使用HAL庫(kù)低功耗STOP和STANDBY模式喚醒(RTC時(shí)鐘喚醒+外部中斷喚醒示例)
RA UART實(shí)現(xiàn)SW Standby Mode喚醒流程
評(píng)論