1.嵌入式閃存
1.1模塊介紹
CIU32M010、CIU32M030 集成了嵌入式 FLASH 控制模塊,該模塊控制 FLASH 的擦除、編程以及讀取數據。上電時會從 FLASH 中讀取相關數據進行校驗以及初始化配置,保證芯片程序在正確且安全的情況下運行。
1.2功能特點
? 支持高達 64K 主閃存空間的 FLASH
? 存儲器結構
– 主閃存空間 64K 字節
– 副閃存空間 4.5K 字節
? 指出對閃存空間的擦寫、編程和讀操作
? 支持對閃存空間訪問限制和擦寫保護
? 支持低功耗模式
1.3功能說明
1.3.1.閃存讀保護
讀操作在整個芯片工作電壓范圍內都可以完成,用于存放指令或者數據。
當 NVR8 用戶配置區經過自定義的保護配置后,SWD 連接時會對 FLASH 的代碼數據執行保護機制。
注:FLASH 運行在 24MHz 工作頻率,當系統時鐘超過 30MHz 時,需要配置 TIMER_REG0 的 RC 參數,增加時鐘周期數再把 FLASH 接口的數據寫到寄存器。
1.3.2.閃存擦除和燒寫操作
燒寫和擦除操作在整個芯片工作電壓范圍內都可以完成。
燒寫和擦除操作由下列 6 個寄存器完成,先根據燒寫的時鐘配置好燒寫時序(TIME_REG1),再配置燒寫密碼,配置好編程地址,最后配置好編程數據,即可開始執行燒寫,然后等待操作結束。
燒寫操作相關寄存器
? 時序寄存器 1 :TIME_REG1
? 密碼寄存器 :NVR_PASSWORD/MAIN_PASSWORD
? 編程地址寄存器:PROG_ADDR
? 編程數據寄存器:PROG_DATA
? 狀態寄存器 :DONE
擦除操作相關寄存器:
? 擦除控制寄存器:ERASE_CTRL
注:需要注意的是,FLASH 在擦除/燒寫的同時不可以從 FLASH 取數據,所以 FLASH 在擦除/燒寫過程中會讓總線停頓,直到完成后才能繼續運行
1.4模塊框圖
1.5NVR8 閃存用戶配置區
副閃存 NVR8 最后 64byte 為用戶配置區,邏輯地址區間:0x0001_11C0-0x0001_11FF,該區域的配置數據需要在程序燒寫階段燒寫,芯片正常上電后這些信息為只讀。
2.中斷和事件(INT/EVT)
2.1嵌套向量中斷控制器
? 中斷都可屏蔽(除了 NMI)
? 4 個可編程的優先等級
? 低延遲的異常和中斷處理
? 電源管理控制
? 系統控制寄存器的實現
嵌套向量中斷控制器(NVIC)和處理器核的接口緊密相連,可以實現低延遲的中斷處理和高效地處理晚到的中斷。
2.2系統滴答(SysTick)校準值寄存器
本芯片支持系統滴答計時。
2.3中斷功能描述
處理器和嵌套式矢量型中斷控制器(NVIC)在處理(Handler)模式下對所有異常進行優先級區分以及處理。當異常發生時,系統自動將當前處理器工作狀態壓棧,在執行完中斷服務子程序 (ISR)后自動將其出棧。
取向量是和當前工作態壓棧并行進行的,從而提高了中斷入口效率。處理器支持咬尾中斷,可實現背靠背中斷,大大削減了反復切換工作態所帶來的開銷。
2.4外部中斷/事件控制器(EXTI)
外部中斷/事件控制器包含 44 個產生中斷/事件觸發的邊沿檢測電路,每條輸入線可以獨立地配置觸發事件類型(上升沿或下降沿或者雙邊沿都觸發)。每條輸入線都可以獨立地被屏蔽,掛起寄存器保持著狀態線的中斷請求,可通過對掛起的寄存器對應位寫“1”清除中斷請求。
2.4.1主要特征
EXTI 控制器的主要特性如下
? 每個中斷/事件都有獨立的觸發和屏蔽
? 每個中斷線都有專用的狀態位
? 支持多達 44 個軟件中斷/事件請求
? 支持上升沿、下降沿和雙邊沿 3 種觸發事件類型
2.4.2喚醒事件管理
CIU32M010、CIU32M030 可以處理外部或內部事件來喚醒內核(WFE)。喚醒事件可以通過下述配置產生:
外設的控制寄存器使能一個中斷,但不在 NVIC 中使能,同時在 CPU 的系統控制寄存器中使能SEVONPEND 位。當 CPU 從 WFE 恢復后,需要清除相應外設的中斷掛起位和外設 NVIC 中斷通道掛起位(在 NVIC 中斷清除掛起寄存器中)。
配置一個外部或內部 EXTI 線為事件模式,當 CPU 從 WFE 恢復后,因為對應事件線的掛起位沒有被置位,不必清除相應外設的中斷掛起位或 NVIC 中斷通道掛起位。
審核編輯:湯梓紅
-
單片機
+關注
關注
6032文章
44521瀏覽量
633136 -
mcu
+關注
關注
146文章
17002瀏覽量
350334 -
嵌入式
+關注
關注
5069文章
19021瀏覽量
303414 -
中斷
+關注
關注
5文章
895瀏覽量
41398
發布評論請先 登錄
相關推薦
評論