nrf52832協議棧S132特性記錄


1. NRF52832帶藍牙協議棧的程序是如何跳轉的?

答:如果NRF52832燒錄了協議棧S132和用戶應用程序,那么程序會先從協議棧的MBR啟動,然后跳轉到應用程序執行。

2. 關於中斷的執行是怎樣的?

答:所有應用程序或bootloader的中斷都是由協議棧分發出來后執行的,所以燒錄協議棧后,中斷服務函數進入的時間會被加長了,具體延時的大小看如下官方數據:

image

對於開放性的外設,最大為3us的延時。

3. 關於中斷優先級是怎么划分的?

nrf52832的中斷優先級有8個,從0到7(其中0的優先級最高),且這個中斷優先級是協議棧規定的,是不能夠被改變的。

當芯片復位啟動時,所有中斷優先級都為0,之后協議棧會占用如下三個中斷等級:

level 0 :用於處理協議棧嚴格時序的事件;

level 1 :用於內存隔離和實時保護用;

level 2 :用於處理可延遲的任務以及SVC中斷事件等;

其它5個等級可供用戶應用程序使用,如下圖所示:

image

另外需要特別注意的是,因為優先級為4的中斷會處理SVC等事件,所以應用程序的中斷優先級2和3也是受限的,即不能在中斷優先級為2和3的中斷服務函數中調用協議棧函數,SVC中斷函數以及RTOS函數等。

另外如果你足夠細心,你會發現中斷優先級為2的中斷要比中斷優先級為7的中斷執行的快,因為前面的中斷等級越多,也就是要等待的事件就越多,等待的時間就會越長。

以下為三種場景下的中斷響應過程:

image

4.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM