rh850與r7f7的關(guān)系
RH850和R7F7都是日本Renesas Electronics公司推出的兩個(gè)不同系列的汽車微控制器。
RH850系列是一種高性能的汽車微控制器系列,專為車身控制、發(fā)動(dòng)機(jī)控制、電動(dòng)驅(qū)動(dòng)系統(tǒng)和安全系統(tǒng)等應(yīng)用而設(shè)計(jì)。它采用了Renesas的RISC(Reduced Instruction Set Computer)架構(gòu),并具有高性能、高可靠性和低功耗的特點(diǎn)。RH850系列微控制器通常用于高級駕駛輔助系統(tǒng)(ADAS)、自動(dòng)駕駛系統(tǒng)以及其他需要較高計(jì)算性能和實(shí)時(shí)響應(yīng)的汽車應(yīng)用。
而R7F7系列則是一種具有高集成度的汽車微控制器系列,它采用了ARM Cortex-M7內(nèi)核,并且集成了豐富的外設(shè)和功能,包括高分辨率模擬輸入、高速ADC和CAN-FD接口等。R7F7系列微控制器適用于車身電子控制單元(ECU)、儀表盤、車載娛樂系統(tǒng)和車門控制等應(yīng)用。
RH850系列主要是面向高性能和高級應(yīng)用的汽車微控制器,而R7F7系列則是面向高集成度和廣泛應(yīng)用的汽車微控制器。兩者在技術(shù)架構(gòu)、性能特點(diǎn)和應(yīng)用領(lǐng)域等方面存在差異。
如何使用RH850系列MCU進(jìn)行開發(fā)
本文向工程師簡單介紹RH850系列MCU的中斷部分,以幫助工程師更好的使用RH850系列MCU進(jìn)行開發(fā)。
RH850的中斷從功能上分為三種,F(xiàn)E級不可屏蔽中斷,F(xiàn)E級可屏蔽中斷,以及EI級可屏蔽中斷。其中FE級代表芯片功能性的中斷,以輔助工程師了解MCU內(nèi)部出錯(cuò)的來源。EI級可屏蔽中斷中斷是我們定義的各個(gè)功能模塊所產(chǎn)生的中斷。
三者的優(yōu)先級順序?yàn)椋篎E級不可屏蔽中斷 》 FE級可屏蔽中斷 》 EI級可屏蔽中斷。
FE級不可屏蔽中斷:在芯片R7F7010323中表現(xiàn)為兩個(gè)WDT中斷,任何情況不可屏蔽。
FE級可屏蔽中斷:包括位錯(cuò)誤,RAM錯(cuò)誤,以及低壓檢查等中斷,可設(shè)置PSW.NP=1來屏蔽該種類型中斷。
EI級可屏蔽中斷:即是我們定義的功能性中斷如CAN接收中斷,定時(shí)器中斷等。
其中EI級可屏蔽中斷即是我們最常接觸的中斷,在RH850中最高可分為16個(gè)優(yōu)先等級。每個(gè)EI級中斷,以功能模塊命名,如定時(shí)器TAUD0的通道2中斷命名為INTTAUD0I2。中斷配置相關(guān)的寄存器為ICTAUD0I2。
系統(tǒng)中默認(rèn)以優(yōu)先級形式進(jìn)入中斷入口,中斷入口函數(shù)定義可參照如下程序:
#pragma interrupt priority7_interrupt( enable=false , priority=EIINT_PRIORITY7 , callt=false , fpu=false )
void priority7_interrupt( uint32_t regEIIC_value )
{
test = regEIIC_value;
switch ( regEIIC_value )
{
case 0x0000100AUL: /* INTADCA0I0 *
*/
break;
}
此外系統(tǒng)中也定義了宏定義來方便我們處理中斷操作:
DI():關(guān)閉EI級中斷
EI():允許EI級中斷
也可以調(diào)用以下內(nèi)置函數(shù)set_il_rh來配置中斷優(yōu)先級和屏蔽使能功能:
1、函數(shù)__set_il_rh(int interrupt-priority-level, void* address of interrupt control register);設(shè)置對應(yīng)地址中斷的中斷優(yōu)先級,
interrupt-priority-level 范圍0~15。
2、以上的函數(shù) interrupt-priority-level值如下表格時(shí),對應(yīng)的功能如下:
圖:中斷屏蔽功能選項(xiàng)
在RH850系列微控制器中,中斷處理是實(shí)現(xiàn)實(shí)時(shí)響應(yīng)和多任務(wù)處理的重要機(jī)制。以下是RH850 MCU中斷處理的基本步驟:
1. 中斷源配置:RH850 MCU提供了多個(gè)中斷源,包括外部中斷、定時(shí)器中斷、串口中斷等。在使用中斷之前,需要配置中斷源,并設(shè)置中斷觸發(fā)條件。
2. 中斷向量表:RH850 MCU的中斷處理通過中斷向量表來確定中斷服務(wù)程序的入口地址。中斷向量表是一個(gè)存儲中斷向量地址的數(shù)據(jù)結(jié)構(gòu),用于將特定的中斷源與相應(yīng)的中斷服務(wù)程序關(guān)聯(lián)起來。
3. 中斷服務(wù)程序編寫:針對每個(gè)中斷源,需要編寫相應(yīng)的中斷服務(wù)程序。中斷服務(wù)程序是處理中斷事件的函數(shù),當(dāng)相應(yīng)的中斷源觸發(fā)時(shí),CPU會跳轉(zhuǎn)到中斷向量表中相應(yīng)的入口地址,并從那里開始執(zhí)行中斷服務(wù)程序。
4. 中斷優(yōu)先級配置:RH850 MCU支持多級中斷優(yōu)先級。在同時(shí)發(fā)生多個(gè)中斷時(shí),CPU會根據(jù)中斷優(yōu)先級來確定哪個(gè)中斷先被處理。可以通過配置中斷優(yōu)先級來確保重要的中斷優(yōu)先級高于其他中斷。
5. 中斷使能:在需要使用中斷的地方,需要將相應(yīng)的中斷源使能。使能中斷后,當(dāng)對應(yīng)的中斷源觸發(fā)時(shí),CPU才會跳轉(zhuǎn)執(zhí)行相應(yīng)的中斷服務(wù)程序。
6. 中斷處理:當(dāng)中斷源觸發(fā)時(shí),CPU會自動(dòng)暫停當(dāng)前的任務(wù),保存相關(guān)的寄存器狀態(tài),并跳轉(zhuǎn)到中斷向量表中相應(yīng)的入口地址,開始執(zhí)行中斷服務(wù)程序。在中斷服務(wù)程序中,可以進(jìn)行特定的中斷處理操作,如讀取外設(shè)數(shù)據(jù)、處理中斷事件、更新狀態(tài)等。
7. 中斷結(jié)束:中斷服務(wù)程序執(zhí)行完成后,需要將中斷服務(wù)程序的返回地址從堆棧中恢復(fù),并恢復(fù)之前被保存的寄存器狀態(tài)。此時(shí),CPU會從中斷被觸發(fā)的地方繼續(xù)執(zhí)行之前的任務(wù)。
需要注意的是,中斷處理需要考慮實(shí)時(shí)性和對共享資源的正確處理,以確保中斷不會出現(xiàn)沖突和競態(tài)條件。
編輯:黃飛
-
微控制器
+關(guān)注
關(guān)注
48文章
7566瀏覽量
151614 -
中斷處理
+關(guān)注
關(guān)注
0文章
94瀏覽量
10986 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4338瀏覽量
62738 -
adas
+關(guān)注
關(guān)注
309文章
2186瀏覽量
208705 -
rh850
+關(guān)注
關(guān)注
2文章
24瀏覽量
4616
發(fā)布評論請先 登錄
相關(guān)推薦
評論