STM32 使用定時器計數 暫存器版本

2021-10-09 05:09:00 字數 882 閱讀 2208

學過51微控制器的同學,都知道51微控制器只提供了2個定時器 2個外部中斷(c52 還有定時器2),在編寫乙個比較大的工程的時候,有時候會發現定時器完全不夠用,而32完全可以克服這一困難

stm32f103系列可使用的定時器8個,其中通用定時器有tmi1-tim7

高階定時器tim0 tim8

而在這 我主要使用通用定時器進行計數

使用計時器還是比較簡單的,在開發文件中

這一張是時基電路的

由圖可以看出 使用乙個簡單的定時計數功能

實際要操作預分頻暫存器和自動重裝載暫存器(計數暫存器 不需要賦值)

我個人總結如下:

定時時間 (預分頻 * (裝載值 + 1)/ 72mhz)

使用定時器步驟

外設時鐘使能

預分頻重裝載

開啟中斷更新

開啟使能 自動重裝載使能 總開關使能

nvic開啟

中斷函式

判斷定時器狀態sr (硬體置1 軟體清0)

**如下:

void time_init(u16 pre,u16 psc)

void tim5_irqhandler(void)

tim5->sr &

= ~(0x01)

;}

這裡注釋一下

nvic_init(2,3,tim5_irqn,2); //nvic開啟

在stm32 串列埠通訊 暫存器版

有詳細**

Stm32 暫存器 定時器中斷

1 原理 和外部中斷差不多,不同的是外部中斷的產生是由外部硬體產生變化的,而定時器中斷就是通過定時器的溢位實現中斷 可以想象成鬧鐘 2 操作步驟 這裡我用的是通用定時器tim3 1 tim3 時鐘使能。這裡我們通過 apb1enr 的第 1 位來設定 tim3 的時鐘,因為 stm32 clock ...

STM32定時器的預裝暫存器及影子暫存器話題

摘自 經常有人問起預裝暫存器和影子暫存器的話題,其實stm32相關系列的手冊裡有介紹,有文件做介紹,這裡借花獻佛地一起分享下。在談預裝暫存器及影子暫存器的差別前,不妨先對stm32定時器的時基單元做個基本了解。stm32各系列的定時器結構和框架基本是一樣的,時基單元也一樣。下面時基單元是以stm32...

STM32定時器的預裝暫存器以及影子暫存器話題

經常有人問起預裝暫存器和影子暫存器的話題,其實stm32相關系列的手冊裡有介紹,有文件做介紹,這裡借花獻佛地一起分享下。在談預裝暫存器及影子暫存器的差別前,不妨先對stm32定時器的時基單元做個基本了解。stm32各系列的定時器結構和框架基本是一樣的,時基單元也一樣。下面時基單元是以stm32f3系...