問題起因
有人詢問 STM32F7 和 STM32H7 系列庫例程中有關(guān) MPU 配置中的下面這句加綠色下劃線的代碼的意思是什么?有何用?
問題解析
所謂子區(qū)【Subregion】,當我們對任一存儲空間不小于 256B 的區(qū)域【Region】進行 MPU 配置時,往往可以把該區(qū)【region】等分為 8 個子區(qū)【Subregion】,并可以把當前 MPU 配置選擇性地針對各個子區(qū)進行排除性設(shè)置。在內(nèi)核里有個關(guān)于 MPU 配置的寄存器 MPU_RASR,其中有個 8 位字段 SRD 就是用來設(shè)置各個子區(qū)的 MPU 排除性設(shè)置或者說例外性配置。如果某位為 0,表示該子區(qū)適用當前 MPU 配置;如果某位為 1,表示該位所對應(yīng)子區(qū)不適用當前 MPU 配置,即不受當前 MPU 配置約束。
問題小結(jié)
本篇內(nèi)容主要涉及內(nèi)核 MPU 配置方面的東西,重點針對客戶的疑問做了些解答,對 MPU 配置中的子區(qū)概念做了較為詳細的解讀,以供參考。
閱讀全文