STM32F407標準庫學習筆記 SYSTICK

2021-10-21 11:05:59 字數 658 閱讀 6655

systick定時器與核心緊密相連,請參考arm公司的手冊,他的中斷使能在自己的模組中,中斷優先順序和標誌位在scb中。

typedef

struct

systick_type;

控制及狀態暫存器:計數標誌、時鐘源、異常(中斷)使能、計時器使能(開始)

重裝載數值暫存器:倒計時起始值,24位有效,因為是減到0後再減1後重灌,所以寫入值要在目標值上減1

當前值暫存器:存有倒計數的當前值,和計數標誌位有聯動關係,具體見權威手冊

校準暫存器:校準計時用,部分廠家會去掉此功能,讀取值位零,較少使用

systick_config

(uint32_t ticks)

設定優先順序為15(異常中的最低),使能計時器,使能計時器中斷,時鐘源是sysclk

雖然設定優先順序時呼叫了nvic相關函式,但是systick優先順序設定在scb模組中,只是該函式會根據中斷向量號選擇設定nvic還是scb,實際上與nvic暫存器無關。

systick_clksourceconfig

(uint32_t systick_clksource)

更換systick時鐘源的函式

STM32F407標準庫學習筆記 EXTI機制

如上圖所示,紅色為自引腳傳入的硬體電平訊號,綠色為暫存器傳來的軟體電平訊號 兩者皆為 能夠觸發 中斷 事件 的訊號,交匯於或門,兩者都可以單獨向後面發出訊號。即訊號 有軟 硬兩種。藍色線路 意為 將 或門傳出的訊號 視為中斷訊號,借助兩個 且門 和兩組對應的 遮蔽暫存器的 輸出訊號,實現藍色通路,黃...

基於stm32f407建立stm32F427工程

分為三個部分 1.啟動檔案 2.fwilib 包含兩個資料夾inc和src。src裡面是stm32資源的c檔案,inc則是32資源的h檔案 3.user這也是我不太理解的部分 ddbugconfig只包含了用於debug的初始化,則是f4的系統檔案。我是在f407的基礎上改的 總的來說 1.改了晶元...

STM32F407上除錯freeRTOS問題

是在正點原子的阿波羅stm32f429開發板上的例子改來的,他們的編譯沒有問題,我編譯時出現如下問題 定位到出錯的地方,是 再追 configmax syscall interrupt priority 的定義是 define configmax syscall interrupt priority...