本發(fā)明屬于電源管理,尤其涉及一種車載座艙電源管理休眠喚醒的實現(xiàn)方法和系統(tǒng)。
背景技術(shù):
1、目前市場上車載座艙系統(tǒng)一般包含兩顆主控芯片,一顆mcu加一顆soc,其中mcu作為輸入輸出信號處理,對系統(tǒng)電源狀態(tài)進行管理,執(zhí)行soc的上電和下電時序,系統(tǒng)的休眠喚醒以及低功耗功能的實現(xiàn)。座艙涉及到多個電源狀態(tài),需要通過電源管理模塊來進行管理,當滿足休眠條件時mcu會啟動休眠流程讓soc處于下電狀態(tài),mcu進入低功耗模式,以保證座艙的整機功耗最低,滿足客戶的靜態(tài)電流要求(一般靜態(tài)電流需要小于1ma)。在低功耗模式下mcu收到喚醒信號,則被中斷喚醒,從而喚醒整個座艙系統(tǒng)。
2、休眠喚醒技術(shù)在電源管理中至關(guān)重要,如果座艙進入休眠后,用戶下次用車時如果座艙無法被喚醒,儀表和da將出現(xiàn)黑屏,導(dǎo)致用戶無法使用。目前常用的喚醒方式主要是硬線acc或者ign喚醒,can報文喚醒,一般采用的都是中斷喚醒,根據(jù)不同客戶需求,可能出現(xiàn)單獨使用硬線喚醒和單獨使用can報文喚醒,也可以是同時支持硬線acc和ign喚醒,又支持can報文喚醒,在休眠狀態(tài)下,當收到acc,ign?on信號時,或者can報文時喚醒mcu,mcu再給soc上電使整機開始工作。
3、mcu進入低功耗模式,需要做一系列的準備工作,例如關(guān)閉部分外設(shè),切換時鐘到低頻模式,切換mcu工作模式,關(guān)斷mcu內(nèi)部部分供電等操作,所以在這個過程中acc和ign的狀態(tài)可能發(fā)送變化,從off變成on,當mcu真正休眠下去后,不會再有電平的變化,如果用戶不重新操作acc和ign使其off再on,座艙將會出現(xiàn)因為在mcu休眠過程中錯過acc和ign而無法喚醒。
4、某些can收發(fā)器在低功耗模式下會先將rxd保持高電平,當收到遠程喚醒信號時,rxd變成低電平,并一直保持低電平,后面再收到遠程喚醒信號也不會發(fā)生反轉(zhuǎn),所以只產(chǎn)生一次電平變化,如果在休眠過程中can總線上從沒有報文變成有報文發(fā)送,同樣會出現(xiàn)在進入休眠過程中錯過rxd上的下降沿中斷,導(dǎo)致后面mcu一直無法被喚醒。
5、因此,現(xiàn)有的acc和ign喚醒方式,單獨使用外部gpio中斷來喚醒mcu,偶現(xiàn)在休眠喚醒過程中因為錯過acc或者ign?on信號而無法啟動?,F(xiàn)有的can喚醒方式,簡單使用stb_n和en,來讓can收發(fā)器進入standby或者sleep模式,等待遠程喚醒信號來喚醒can收發(fā)器,讓can收發(fā)器的rxd發(fā)生電平變化觸發(fā)mcu中斷喚醒?,F(xiàn)在休眠喚醒過程中因為錯過can遠程喚醒信號而無法啟動。
6、因此,如何對現(xiàn)有的車載座艙電源管理休眠喚醒方式進行改進,以防止硬線信號中斷在休眠過程中被錯過,從而無法喚醒系統(tǒng)無法啟動,以及錯過can收發(fā)器中斷信號被錯過無法喚醒系統(tǒng)無法啟動,是目前亟需解決的技術(shù)問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的在于對現(xiàn)有的車載座艙電源管理休眠喚醒方式進行改進,以防止硬線信號中斷在休眠過程中被錯過,從而無法喚醒系統(tǒng)無法啟動,以及錯過can收發(fā)器中斷信號被錯過無法喚醒系統(tǒng)無法啟動的情況發(fā)生。
2、為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案如下:
3、第一方面,提供一種車載座艙電源管理休眠喚醒系統(tǒng),包括mcu模塊、can收發(fā)器、硬線休眠喚醒模塊和can休眠喚醒模塊,所述mcu模塊與所述硬線休眠喚醒模塊和can休眠喚醒模塊連接,所述硬線休眠喚醒模塊包括硬線休眠模式和硬線喚醒模塊,所述can休眠喚醒模塊包括can休眠模式和can喚醒模式;
4、所述mcu模塊為s32k148微控制器,所述can收發(fā)器為tja1043,所述mcu模塊在進入低功耗模式后處于等待中斷的狀態(tài),支持外部gpio喚醒,內(nèi)部rtc中斷喚醒,內(nèi)部超低功耗定時器器喚醒;
5、所述can收發(fā)器至少五種工作模式,包括監(jiān)聽模式listen?only、正常工作模式normal、節(jié)能模式standby、活動到休眠的過渡模式go-to-sleep、休眠模式sleep?mode。
6、優(yōu)選的,所述硬線休眠喚醒模塊通過gpio中斷和低功耗定時器組合的方式來保證mcu的喚醒,所述硬線休眠喚醒模塊的硬線休眠模式具體設(shè)置為:
7、設(shè)置acc,ign對應(yīng)的pin為喚醒源;使能acc和ign?gpio邊沿中斷;初始化低功耗定時器,設(shè)置其定時周期為50ms;監(jiān)測acc和ign電平是否滿足睡眠條件,若是,則設(shè)置mcu模塊工作模式為低功耗模式,若否,則重啟系統(tǒng)。
8、優(yōu)選的,所述硬線休眠喚醒模塊的硬線喚醒模式具體設(shè)置為:
9、監(jiān)測到acc?on信號后mcu模塊自動喚醒,或者監(jiān)測到ign?on信號后mcu模塊自動喚醒;
10、當在mcu模塊進入低功耗模式下出現(xiàn)acc或者ign?on信號,在收到中斷信號后,開啟定時器計時,并使能定時器中斷;
11、當mcu模塊休眠后,mcu模塊的低功耗定時器繼續(xù)運行,當50ms到達時產(chǎn)生一個定時器中斷喚醒mcu模塊。
12、優(yōu)選的,所述can休眠喚醒模塊的can休眠模式設(shè)置為:
13、在所述can休眠喚醒模塊啟動can休眠模式后將can收發(fā)器的stb_n和en同時拉低,使can收發(fā)器進入待機模式standby?mode;
14、將can收發(fā)器的vcc關(guān)斷,使其檢查到vcc電壓異常而進入sleep?mode;將連接can收發(fā)器的rxd的mcu?canrx引腳設(shè)置成通用gpio喚醒源;使能canrx引腳邊沿中斷;設(shè)置mcu工作模式為低功耗模式。
15、優(yōu)選的,can休眠喚醒模塊的can喚醒模式設(shè)置為當mcu處于低功耗模式后收到canh和canl上的遠程喚醒組合信號后,mcu被自動喚醒;
16、在mcu模塊進入低功耗模式的過程中收到canh和canl上的電平滿足喚醒組合時,rxd拉低產(chǎn)生一個下降沿,同時can收發(fā)器被喚醒進入待機模式standby?mode,此時vcc是被關(guān)斷的,can收發(fā)器重新檢查到vcc欠壓而重新進入休眠模式sleep?mode,rxd被重新拉高,由于canh和canl上一直有電平變化,當下一次滿足喚醒組合時,rxd上會再次產(chǎn)生下降沿觸發(fā)mcu的canrx上的下降沿中斷喚醒mcu模塊。
17、第二方面,提供一種車載座艙電源管理休眠喚醒的實現(xiàn)方法,通過任意一項所述的一種車載座艙電源管理休眠喚醒系統(tǒng)實現(xiàn),包括硬線休眠過程:
18、s11:設(shè)置acc,ign對應(yīng)的pin為喚醒源;
19、s12:使能acc和ign?gpio邊沿中斷;
20、s13:初始化低功耗定時器,設(shè)置其定時周期為50ms;
21、s14:檢查acc和ign電平是否滿足睡眠條件,若是,則設(shè)置mcu工作模式為低功耗模式,若否,則重啟系統(tǒng)。
22、優(yōu)選的,包括硬線喚醒過程,具體過程如下:
23、s21:檢測到acc?on信號后mcu自動喚醒。
24、s22:檢測到ign?on信號后mcu自動喚醒。
25、s23:當在mcu模塊進入低功耗模式中出現(xiàn)acc或者ign?on信號,在收到中斷信號后,開啟定時器計時,并使能定時器中斷;
26、當mcu模塊休眠后,低功耗定時器繼續(xù)運行,在50ms到達時產(chǎn)生一個定時器中斷喚醒mcu。
27、優(yōu)選的,包括can休眠過程,具體過程如下:
28、s31:在啟動休眠:模式后時將stb_n和en同時拉低,使can收發(fā)器進入待機模式standby?mode;
29、s32:將can收發(fā)器的vcc關(guān)斷,使其檢查到vcc電壓異常而進入休眠模式sleepmode;
30、s33:將連接can收發(fā)器的rxd的mcu?canrx引腳設(shè)置成通用gpio喚醒源;
31、s34:使能canrx引腳邊沿中斷;
32、s35:設(shè)置mcu模塊的工作模式為低功耗模式。
33、優(yōu)選的,包括can喚醒過程,具體過程如下:
34、s41:當mcu處于低功耗模式后收到canh和canl上的遠程喚醒組合信號后,mcu被自動喚醒;
35、s42:在mcu模塊進入低功耗模式的過程中收到canh和canl上的電平滿足喚醒組合時,rxd拉低產(chǎn)生一個下降沿,同時can收發(fā)器被喚醒進入待機模式standby?mode,此時vcc是被關(guān)斷的,can收發(fā)器重新檢查到vcc欠壓而重新進入休眠模式sleep?mode,rxd被重新拉高,由于canh和canl上一直有電平變化,當下一次滿足喚醒組合時,rxd上會再次產(chǎn)生下降沿觸發(fā)mcu的canrx上的下降沿中斷喚醒mcu模塊。
36、優(yōu)選的,can休眠喚醒模塊在can休眠模式時采用stb_n和en讓tja1043進待機模式入standby?mode,同時通過can收發(fā)器監(jiān)測到vcc欠壓時欠壓保護進入can休眠模式sleepmode。
37、本發(fā)明的有益效果包括:
38、本發(fā)明提供的車載座艙電源管理休眠喚醒的實現(xiàn)方法和系統(tǒng),包括mcu模塊、can收發(fā)器、硬線休眠喚醒模塊和can休眠喚醒模塊,硬線休眠喚醒模塊包括硬線休眠模式和硬線喚醒模塊,can休眠喚醒模塊包括can休眠模式和can喚醒模式;mcu模塊為s32k148微控制器,can收發(fā)器為tja1043,mcu模塊在進入低功耗模式后處于等待中斷的狀態(tài),支持外部gpio喚醒,內(nèi)部rtc中斷喚醒,內(nèi)部超低功耗定時器器喚醒。
39、首先,通過設(shè)置硬線休眠喚醒模塊和can休眠喚醒模塊的雙重休眠喚醒模塊,使得通過雙重保障的模式能夠最大限度地確保車載座艙電源能夠正常地進行休眠或者喚醒,防止單獨使用外部gpio中斷來喚醒mcu,而在休眠喚醒過程中因為錯過acc或者ign?on信號而無法啟動或者簡單使用stb_n和en,來讓can收發(fā)器進入standby或者sleep模式,等待遠程喚醒信號來喚醒can收發(fā)器,讓can收發(fā)器的rxd發(fā)生電平變化觸發(fā)mcu中斷喚醒。偶現(xiàn)在休眠喚醒過程中因為錯過can遠程喚醒信號而無法啟動的情況發(fā)生。
40、其次,當在mcu模塊進入低功耗模式這一步驟過程中出現(xiàn)acc或者ign?on,因為此時無法打斷休眠過程,所以收到中斷后,開啟定時器計時,并使能定時器中斷。當mcu模塊休眠下去后,低功耗定時器會繼續(xù)運行,當50ms到達時會產(chǎn)生一個定時器中斷,從而喚醒mcu,不會造成因為錯過acc或者ign后無法喚醒mcu的情況。
41、再次,采用tja1043作為can收發(fā)器,系統(tǒng)休眠時采用stb_n和en讓tja1043進入standby?mode,同時利用tja1043檢測到vcc欠壓時欠壓保護進入sleep?mode的特性來解決tja1043遠程喚醒時rxd只產(chǎn)生一個下降沿,mcu模塊可能因為錯過這個下降沿而無法喚醒的問題。
42、最后,在mcu模塊進入低功耗模式的過程中收到canh和canl上的電平滿足喚醒組合時,rxd拉低產(chǎn)生一個下降沿,同時tja1043被喚醒進入standby?mode,但此時vcc是被關(guān)斷的,tja1043會重新檢查到vcc欠壓而重新進入sleep?mode,rxd被重新拉高,因為canh和canl上會一直有電平變化,當下一次滿足喚醒組合時,rxd上會再次產(chǎn)生下降沿,從而觸發(fā)mcu的canrx上的下降沿中斷喚醒mcu,避免了因為rxd上面的下降沿被錯過而導(dǎo)致系統(tǒng)無法喚醒的情況發(fā)生。