RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RA UART實(shí)現(xiàn)SW Standby Mode喚醒流程

瑞薩MCU小百科 ? 來(lái)源:瑞薩MCU小百科 ? 2024-04-15 14:03 ? 次閱讀

介紹

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ù)用的,以便做功能切換。

6483287a-fae9-11ee-a297-92fbcf53809c.png

02

Low Power Mode配置

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

649db668-fae9-11ee-a297-92fbcf53809c.png

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)

64acff38-fae9-11ee-a297-92fbcf53809c.png

只需通過(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ù)才能夠正常接收。



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 串口通訊
    +關(guān)注

    關(guān)注

    1

    文章

    258

    瀏覽量

    24912
  • 電池供電
    +關(guān)注

    關(guān)注

    0

    文章

    255

    瀏覽量

    22150
  • UART接口
    +關(guān)注

    關(guān)注

    0

    文章

    124

    瀏覽量

    15288
  • 回調(diào)函數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    87

    瀏覽量

    11554

原文標(biāo)題:RA UART實(shí)現(xiàn)SW Standby Mode喚醒

文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    MM32 在STOP模式下通過(guò)UART喚醒

    STOP模式下通過(guò)UART喚醒MCU的程序配置流程:1,配置所有引腳為模擬輸入2,配置串口接收引腳為外部中斷3,進(jìn)入stop mode4,初始化串口等外設(shè)
    發(fā)表于 12-14 17:03

    請(qǐng)問(wèn)AD9265在Standby模式下的喚醒時(shí)間是多少?

    RT:AD9265在Standby模式下的喚醒時(shí)間是多少?官方的數(shù)據(jù)手冊(cè)沒(méi)有明確給出這個(gè)時(shí)間,只是說(shuō)了Power-down的喚醒時(shí)間
    發(fā)表于 08-24 11:19

    SPC58ECx使用WKUP引腳從待機(jī)狀態(tài)喚醒

    翻譯以下為原文 hello team,when i wakeup from standby mode always .My SW not jumping to address what i
    發(fā)表于 10-24 11:16

    UART RX信號(hào)喚醒

    嗨,大家好。我試圖配置PSoC3,當(dāng)任何RX數(shù)據(jù)接收時(shí),它從休眠(或Hibernate)模式喚醒。但我找不到任何樣本,現(xiàn)在我懷疑它可能還是不可能。只有UART用于喚醒,所以您的任何建議將被賞識(shí)。謝謝
    發(fā)表于 05-20 13:42

    使用HAL庫(kù)RTC時(shí)鐘喚醒低功耗STOP和STANDBY模式

    STM32F1系列使用HAL庫(kù)RTC時(shí)鐘喚醒低功耗STOP和STANDBY模式目錄STM32F1系列使用HAL庫(kù)RTC時(shí)鐘喚醒低功耗STOP和STANDBY模式(一)低功耗模式介紹1、
    發(fā)表于 07-23 06:11

    采用RTC WakeUP的方式對(duì)STM32F4xx StandBy模式進(jìn)行喚醒

    WKUP 引腳用于喚醒 (PA0)HAL_PWR_EnterSTANDBYMode(); // 進(jìn)入待機(jī)模式break;??待機(jī)模式的測(cè)試代碼如下,測(cè)試時(shí)在命令行輸入 standby_mode_test使
    發(fā)表于 06-13 14:44

    StandBy待機(jī)模式為例進(jìn)行組件的使用分析

    ();// 進(jìn)入待機(jī)模式 break;??待機(jī)模式的測(cè)試代碼如下,測(cè)試時(shí)在命令行輸入 standby_mode_test使開(kāi)發(fā)板處于待機(jī)模式,然后按下 WAKEUP(PA0) 按鍵,喚醒開(kāi)發(fā)板。int
    發(fā)表于 09-26 17:27

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】LPM_MODE_SLEEP -RTC ALARM定時(shí)喚醒

    ("發(fā)送失敗\\n");#endifset_e31_M1();/*進(jìn)入低功耗模式前打印*/printf("MCU enters Deep SW Standby mode\\r
    發(fā)表于 01-19 13:13

    RTC的alarm中斷事件能否喚醒standby或者shutdown模式?

    Arm?-based 32-bit MCUs》的第89頁(yè),文檔是給出的RTC的中斷事件是喚醒不了的: 這里請(qǐng)問(wèn),RTC的alarm中斷事件能否喚醒standby或者shutdown模式下?
    發(fā)表于 08-08 07:22

    FAQ0099 AT32F421 Standby Mode喚醒方式

    AT32F421_Standby_Mode喚醒方式
    發(fā)表于 10-23 07:20

    AT32F系列PWC待機(jī)喚醒喚醒Standby的使用方法

    演示AT32F系列 PWC待機(jī)喚醒喚醒Standby的使用方法。待機(jī)喚醒腳的上升沿、RTC鬧鐘事件的上升沿、NRST引腳上外部復(fù)位、WDT復(fù)位均能將
    發(fā)表于 10-27 06:32

    AD9265在Standby模式下的喚醒時(shí)間是多少?

    RT:AD9265在Standby模式下的喚醒時(shí)間是多少? 官方的數(shù)據(jù)手冊(cè)沒(méi)有明確給出這個(gè)時(shí)間,只是說(shuō)了Power-down的喚醒時(shí)間
    發(fā)表于 12-15 06:55

    STM32CubeMX低功耗模式——待機(jī)模式(standby)RTC喚醒

    )模式兩種,這篇博客主要是分享一下standby模式,并且通過(guò)RTC實(shí)時(shí)時(shí)鐘的鬧鐘將單片機(jī)從低功耗模式中喚醒的方法。為了方便演示,實(shí)驗(yàn)流程是,通過(guò)串口命令來(lái)設(shè)置單片機(jī)進(jìn)入低功耗模式,再通過(guò)RTC的鬧鐘將單片機(jī)從低功耗狀態(tài)
    發(fā)表于 12-04 16:36 ?27次下載
    STM32CubeMX低功耗模式——待機(jī)模式(<b class='flag-5'>standby</b>)RTC<b class='flag-5'>喚醒</b>

    STM32 低功耗待機(jī)(STANDBY) 和關(guān)機(jī)(SHUTDOWN) 專用管腳喚醒 (EWUP)

    專用管腳喚醒實(shí)現(xiàn)(HAL庫(kù))。2. 低功耗模式STM32L4的低功耗模式,相比其它系列的芯片,多了幾種:3. 低功耗模式STM32的專用低功耗喚醒管腳,可在待機(jī)(STANDBY)及關(guān)
    發(fā)表于 12-31 18:59 ?37次下載
    STM32 低功耗待機(jī)(<b class='flag-5'>STANDBY</b>) 和關(guān)機(jī)(SHUTDOWN) 專用管腳<b class='flag-5'>喚醒</b> (EWUP)

    STM32F1系列使用HAL庫(kù)低功耗STOP和STANDBY模式喚醒(RTC時(shí)鐘喚醒+外部中斷喚醒示例)

    STM32F1系列使用HAL庫(kù)RTC時(shí)鐘喚醒低功耗STOP和STANDBY模式目錄STM32F1系列使用HAL庫(kù)RTC時(shí)鐘喚醒低功耗STOP和STANDBY模式(一)低功耗模式介紹1、
    發(fā)表于 12-31 19:09 ?69次下載
    STM32F1系列使用HAL庫(kù)低功耗STOP和<b class='flag-5'>STANDBY</b>模式<b class='flag-5'>喚醒</b>(RTC時(shí)鐘<b class='flag-5'>喚醒</b>+外部中斷<b class='flag-5'>喚醒</b>示例)
    RM新时代网站-首页