通用定時(shí)器基本原理
1、三種定時(shí)器區(qū)別
2、通用定時(shí)器特點(diǎn)
3、通用定時(shí)器工作過程
?
STM32定時(shí)器
STM32F10x系列總共最多有8個(gè)定時(shí)器:

三種STM32定時(shí)器區(qū)別

通用定時(shí)器功能特點(diǎn)描述
STM32的通用TIMx(TIM2、TIM3、TIM4和TIM5)定時(shí)器功能特點(diǎn)包括:
位于低速的APB1總線上(APB1)
16位向上、向下、向上/向下(中心對齊)計(jì)數(shù)模式,自動(dòng)裝載計(jì)數(shù)器(TIMx_CNT)。
16位可編程(可以實(shí)時(shí)修改)預(yù)分頻器(TIM_PSC),計(jì)數(shù)器時(shí)鐘頻率的分頻系數(shù)為1~65535之間的任意數(shù)值。
4個(gè)獨(dú)立通道(TIMxCH1~4),這些通道可以用來作為:
1輸入捕獲
2輸出比較
3PWM生成(邊緣或中間對齊模式)
4單脈沖模式輸出
可使用外部信號(hào)(TIMx_ETR)控制定時(shí)器和定時(shí)器互聯(lián)(可以用1個(gè)定時(shí)器控制另一個(gè)定時(shí)器)的同步電路。
如下事件發(fā)生時(shí)產(chǎn)生中斷/DMA(6個(gè)獨(dú)立的IRQ/DMA請求生成器):
1更新:計(jì)數(shù)器向上溢出/向下溢出,計(jì)數(shù)器初始化(通過軟件或者內(nèi)部/外部觸發(fā))
2觸發(fā)事件(計(jì)數(shù)器啟動(dòng)、停止、初始化或者由內(nèi)部、外部觸發(fā)計(jì)數(shù))
3輸入捕獲
4輸出比較
5支持針對定位的增量(正交)編碼器和霍爾傳感器電路
6觸發(fā)輸入作為外部時(shí)鐘或者按周期的電流管理
l? STM32的通用定時(shí)器可以被用于:測量輸入信號(hào)的脈沖長度(輸入捕獲)或者產(chǎn)生輸出波形(輸出比較和PWM)等
l? 使用定時(shí)器預(yù)分頻和RCC(Reset and clock control)時(shí)鐘控制器預(yù)分頻器,脈沖長度和波形周期可以在幾個(gè)微秒到幾個(gè)毫秒間調(diào)整。STM32的通用定時(shí)器可以被用于:測量輸入信號(hào)的脈沖長度(輸入捕獲)或者產(chǎn)生輸出波形(輸出比較和PWM)等。
l? 使用定時(shí)器預(yù)分頻器和RCC時(shí)鐘控制器預(yù)分頻器,脈沖長度和波形周期可以在幾個(gè)微秒到幾個(gè)毫秒間調(diào)整。STM32的每個(gè)通用定時(shí)器都是完全獨(dú)立,沒有互相共享的任何資源。
?
計(jì)數(shù)器模式
通用定時(shí)器可以向上計(jì)數(shù)、向下計(jì)數(shù)、向上向下雙向計(jì)數(shù)模式。
1向上計(jì)數(shù)模式:計(jì)數(shù)器從0計(jì)數(shù)到自動(dòng)加載值(TIMx_ARR),然后重新從0開始計(jì)數(shù)并且產(chǎn)生一個(gè)計(jì)數(shù)器溢出事件。
2向下計(jì)數(shù)模式:計(jì)數(shù)器從自動(dòng)裝入的值(TIMx_ARR)開始向下計(jì)數(shù)到0,然后從自動(dòng)裝入的值重新開始,并產(chǎn)生一個(gè)計(jì)數(shù)器向下溢出事件。
3中央對齊模式(向上/向下計(jì)數(shù)):計(jì)數(shù)器從0開始計(jì)數(shù)到自動(dòng)裝入的值-1,產(chǎn)生一個(gè)計(jì)數(shù)器溢出事件,然后向下計(jì)數(shù)到1并且產(chǎn)生一個(gè)計(jì)數(shù)器溢出事件;然后再從0開始重新計(jì)數(shù)。

通用定時(shí)器工作過程
