STM32F429第十八篇之基本定时器
文章目錄
- 前言
- 定時器
- 基本定時器
- 1.時鐘源
- 2.控制器
- 3.預分頻寄存器
- 4.計數器
- 5.中斷與UEV事件
前言
STM32的時鐘比較復雜。在F429中共有14個定時器,大致可以分成以下三類:
- 高級定時器——2個
- 通用定時器——10個
- 基本定時器——2個
本文主要介紹基本定時器.
本文主要參考內容:
- 劉火良, 楊森.STM32庫開發指南——基于STM32F4.機械工業出版社
- ST.RM0090 Reference manual
定時器
在F429中,定時器可以匯總為下表:
| 高級 | TIM1、TIM8 | 16位 | 遞增、遞減 | 有 | 4 | 有 | APB2 |
| 通用 | TIM2、TIM5 | 32位 | 遞增、遞減 | 有 | 4 | 無 | APB1 |
| 通用 | TIM3、TIM4 | 16位 | 遞增、遞減 | 有 | 4 | 無 | APB1 |
| 通用 | TIM9 | 16位 | 遞增 | 無 | 2 | 無 | APB2 |
| 通用 | TIM10、TIM11 | 16位 | 遞增 | 無 | 1 | 無 | APB2 |
| 通用 | TIM12 | 16位 | 遞增 | 無 | 2 | 無 | APB1 |
| 通用 | TIM13、TIM14 | 16位 | 遞增 | 無 | 1 | 無 | APB1 |
| 基本 | TIM6、TIM7 | 16位 | 遞增 | 有 | 0 | 無 | APB1 |
下面,重點介紹基本定時器也就是TIM6、TIM7。
基本定時器
基本定時器的框圖如上圖所示,從圖上看,基本定時器的結構比較簡單。基本定時器的功能只有兩個:
在此,重點研究一下基礎的定時功能。
1.時鐘源
基本定時器的時鐘源只能來自RCC時鐘。根據上面的表格可知,STM32的定時器是掛載在不同的總線上的,從而內部時鐘的頻率也并不相同。而基本時鐘都是掛載在APB1上的。根據時鐘樹圖可知:
定時器的時鐘在默認情況下(presc=0),時鐘源時掛載總線的時鐘兩倍。所以,在基本定時器中,最大的時鐘源頻率為90MHz 。
關于RCC的更多內容,可以參考博客<STM32F429第七篇之RCC(復位與時鐘)>。
2.控制器
在基本定時器中,控制寄存器有兩個。
3.預分頻寄存器
預分頻器可以對時鐘進行分頻,分頻系數在于1-65536之間,而寫入寄存器的值為0-65535。換言之,寫入寄存器的值+1才是真正的分頻系數。預分頻寄存器具有影子寄存器,所以可以對其實時修改。而本次修改的內容將會在下一次事件更新時其起作用。
4.計數器
基本定時器只支持向上計數模式。也就是說,計數器從0自動增加到自動重載值,然后重新從0開始計數。在計數器計數到自動重載時,此時觸發計數器上溢事件(UEV)。此處的自動重載寄存器也具有影子寄存器,該影子寄存器可以通過控制寄存器來控制是否使能。
5.中斷與UEV事件
中斷與事件是不同的概念,中斷是軟件層面,事件是硬件層面。
中斷:此處引發中斷就是當時鐘溢出發生時,會調用對應的中斷函數。
UVE事件:也就是更新事件。當時鐘溢出時,會更新寄存器。將影子寄存器的值寫入對應的正式寄存器。
總結
以上是生活随笔為你收集整理的STM32F429第十八篇之基本定时器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 江河湖库水系连通及水美乡村监测系统解决方
- 下一篇: Avada多功能企业主题去授权 Word