国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

stm32專題二十六:高級定時器介紹

這篇具有很好參考價值的文章主要介紹了stm32專題二十六:高級定時器介紹。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

高級定時器

STM32F103有 2 個高級定時器 TIM1 和 TIM8,高級定時器的功能主要有定時、輸入捕獲、輸出比較、互補輸出等。

高級定時器簡介:

計數(shù)器16bit,上 / 下 / 兩邊 計數(shù),TIM1和TIM8,還有一個重復(fù)計數(shù)器RCR,獨有;

有4個GPIO,其中通道1 ~ 3還有互補輸出GPIO;

時鐘來自PCLK2,為72M,可實現(xiàn)1~65536分頻;

高級定時器和通用定時器的引腳分布:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

高級定時器結(jié)構(gòu)框圖(分成6個部分):?

stm32f103高級定時器,stm32,嵌入式硬件,單片機

一、時鐘源:

  1. 內(nèi)部時鐘(CK_INT);

  2. 外部時鐘模式1:外部輸入引腳TIx(x=1,2,3,4);

  3. 外部時鐘模式2:外部觸發(fā)輸入ETR;

  4. 內(nèi)部觸發(fā)輸入(ITRx):使用一個定時器作為另一個定時器的預(yù)分頻器;

下面,我們來分析一下這個時鐘源的框圖:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

1 內(nèi)部時鐘CK_INT:內(nèi)部時鐘 CK_INT 即來自于芯片內(nèi)部,等于 72M,一般情況下,我們都是使用內(nèi)部時鐘;

2 外部時鐘模式1:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

(1)時鐘信號輸入引腳:

當(dāng)使用外部時鐘模式1時,時鐘信號來自于定時器的輸入通道,共?4個,分別為 TI1 / 2 / 3 / 4,即 TIMx_CH1 / 2 / 3 / 4。

外部的GPIO?TIx,對應(yīng):TIMx_CH1 / 2 / 3 / 4

stm32f103高級定時器,stm32,嵌入式硬件,單片機

由TIM_CCMRx?的位?CCxS[1:0]配置,其中?CCMR1?控制?TI1 / 2,?CCMR2?控制?TI3 / 4

stm32f103高級定時器,stm32,嵌入式硬件,單片機

中文參考手冊中提到,通道2可以配置為輸出,如果是輸入模式,可以選擇連接CH1 or CH2,同樣的,通道1也可以選擇配置成連接CH1 or CH2。

(2)濾波器:

如果來自外部的時鐘信號的頻率過高或者混雜有高頻干擾信號的話,我們就需要使用濾波器對信號重新采樣,來達到降頻或者去除高頻干擾的目的,具體的由 TIMx_CCMRx的位 ICxF[3:0]配置。

具體如何濾波?
stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

(3)邊沿檢測:

邊沿檢測的信號來自于濾波器的輸出,在成為觸發(fā)信號之前,需要進行邊沿檢測,決定是上升沿有效還是下降沿有效。

stm32f103高級定時器,stm32,嵌入式硬件,單片機

(4)觸發(fā)選擇:stm32f103高級定時器,stm32,嵌入式硬件,單片機

(5)從模式選擇:

選定了觸發(fā)源信號后,最后我們需把信號連接到?TRGI?引腳,讓觸發(fā)信號成為外部時鐘模式?1?的輸入,最終等于?CK_PSC,然后驅(qū)動計數(shù)器?CNT?計數(shù)。

3 外部時鐘模式2

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

網(wǎng)上關(guān)于TI1FP1的描述:

? ? ? ?比如 TI1FP1 與 TI1FP2。說實在的,這個地方參考手冊里就沒有個明確的表述,讓人很費解。但是可以可以推理得出來,二者都是來自同一 TI1 輸入通道,經(jīng)過輸入濾波和邊沿檢測器后所產(chǎn)生的具有相同特征的信號,然后映射到不同的輸入捕捉通道,本質(zhì)上還是同一路信號。

?同理,TI2信號,經(jīng)過濾波和邊沿檢測后產(chǎn)生了2路濾波信號,分別是TI2FP1與TI2FP2,它倆也是具有相同特征的信號,只是TI2FP1映射到捕捉通道IC1,TI2FP2映射到捕捉通道IC2。

4 內(nèi)部觸發(fā)輸入:

內(nèi)部觸發(fā)輸入是使用一個定時器作為另一個定時器的預(yù)分頻器。硬件上高級控制定時器和通用定時器在內(nèi)部連接在一起,可以實現(xiàn)定時器同步或級聯(lián)。

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

四.輸入捕獲:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

輸入捕獲可以對輸入的信號的上升沿,下降沿或者雙邊沿進行捕獲,常用的有測量輸入信號的脈寬和測量 PWM 輸入信號的頻率和占空比這兩種。

輸入捕獲的大概的原理就是:當(dāng)捕獲到信號的跳變沿的時候,把計數(shù)器 CNT 的值鎖存到捕獲寄存器 CCR 中,把前后兩次捕獲到的 CCR 寄存器中的值相減,就可以算出脈寬或者頻率。如果捕獲的脈寬的時間長度超過你的捕獲定時器的周期,就會發(fā)生溢出,這個我們需要做額外的處理。

1 普通脈寬測量:當(dāng)檢測到第一個上升沿時,計數(shù)器CNT開始從0計數(shù),又檢測到下降沿時產(chǎn)生中斷,此時的CNT值被鎖存到CCR寄存器中,此時CCR的值就對應(yīng)高電平的時間。

2 PWM輸入測量:一路輸入信號(TI1)占用兩個捕獲通道(IC1 和 IC2)。

輸入捕獲框圖:
stm32f103高級定時器,stm32,嵌入式硬件,單片機

(1)輸入通道:

需要被測量的信號從定時器的外部引腳 TIMx_CH1/2/3/4 進入,通常叫 TI1 / 2 / 3 / 4。

(2)輸入濾波器和邊沿檢測器:

這一塊和外部時鐘模式一差不多。那么為什么需要濾波呢?

當(dāng)輸入的信號存在高頻干擾的時候,我們需要對輸入信號進行濾波,即進行重新采樣,根據(jù)采樣定律,采樣的頻率必須大于等于兩倍的輸入信號。比如輸入的信號為 1M,又存在高頻的信號干擾,那么此時就很有必要進行濾波,我們可以設(shè)置采樣頻率為 2M,這樣可以在保證采樣到有效信號的基礎(chǔ)上把高于 2M 的高頻干擾信號過濾掉。

邊沿檢測器用來設(shè)置信號在捕獲的時候是什么邊沿有效,可以是上升沿,下降沿,或者是雙邊沿,具體的由 CCER 寄存器的位 CCxP 和 CCxNP 決定。

(3)捕獲通道:

捕獲通道就是圖中的 IC1 / 2 / 3 / 4,每個捕獲通道都有相對應(yīng)的捕獲寄存器 CCR1 / 2 / 3 / 4,當(dāng)發(fā)生捕獲的時候,計數(shù)器 CNT的值就會被鎖存到捕獲寄存器中
stm32f103高級定時器,stm32,嵌入式硬件,單片機

這里我們要搞清楚輸入通道和捕獲通道的區(qū)別,輸入通道是用來輸入信號的,捕獲通道是用來捕獲輸入信號的通道,一個輸入通道的信號可以同時輸入給兩個捕獲通道。比如輸入通道 TI1 的信號經(jīng)過濾波邊沿檢測器之后的 TI1FP1 和 TI1FP2 可以進入到捕獲通道IC1 和 IC2,其實這就是 PWM 輸入捕獲,只有一路輸入信號(TI1)卻占用了兩個捕獲通道(IC1 和 IC2)。當(dāng)只需要測量輸入信號的脈寬時候,用一個捕獲通道即可。

(4)預(yù)分頻器(用來降頻):

捕獲通道 ICx 的輸出信號會經(jīng)過一個預(yù)分頻器,用于決定發(fā)生多少個事件時進行一次捕獲。具體的由寄存器 CCMRx 的位 ICxPSC配置,如果希望捕獲信號的每一個邊沿,則不分頻。

(5)捕獲寄存器:
stm32f103高級定時器,stm32,嵌入式硬件,單片機

五 輸出比較:

輸出比較就是通過定時器的外部引腳對外輸出控制信號,有凍結(jié)、將通道 X(x=1,2,3,4)設(shè)置為匹配時輸出有效電平、輸出無效電平、翻轉(zhuǎn)、強制為無效電平、強制為有效電平、PWM1 和 PWM2 這八種模式。其中 PWM 模式是輸出比較中的特例,使用的也最多。

stm32f103高級定時器,stm32,嵌入式硬件,單片機

結(jié)構(gòu)框圖:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

1 比較寄存器:

當(dāng)計數(shù)器 CNT 的值跟比較寄存器 CCR 的值相等的時候,輸出參考信號 OCxREF 的信號的極性就會改變,其中 OCxREF=1(高電平)稱之為有效電平,OCxREF=0(低電平)稱之為無效電平,并且會產(chǎn)生比較中斷 CCxI,相應(yīng)的標(biāo)志位 CCxIF(SR 寄存器中)會置位。然后 OCxREF再經(jīng)過一系列的控制之后就成為真正的輸出信號 OCx/OCxN。

2 死區(qū)發(fā)生器:

在生成的參考波形 OCxREF 的基礎(chǔ)上,可以插入死區(qū)時間,用于生成兩路互補的輸出信號 OCx 和 OCxN,死區(qū)時間的大小具體由 BDTR 寄存器的位 DTG[7:0]配置。死區(qū)時間的大小必須根據(jù) 與輸出信號相連接的器件及其特性來調(diào)整。下面我們簡單舉例說明下帶死區(qū)的PWM 信號的應(yīng)用,我們以一個板橋驅(qū)動電路為例。

為了理解死區(qū)發(fā)生器,先看一個電機橋式驅(qū)動電路:
stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

3 輸出控制:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

4 輸出引腳

輸出比較的輸出信號最終是通過定時器的外部 IO 來輸出的,分別為 CH1 / 2 / 3 / 4,其中前面三個通道還有互補的輸出通道 CH1 / 2 / 3N。

輸入捕獲的應(yīng)用:

1 測量脈寬或頻率

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機2 PWM輸入模式:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

輸出比較的應(yīng)用:

PWM輸出:

PWM?輸出就是對外輸出脈寬(即占空比)可調(diào)的方波信號,信號頻率由自動重裝寄存器?ARR?的值決定,占空比由比較寄存器?CCR?的值決定。

stm32f103高級定時器,stm32,嵌入式硬件,單片機

?PWM邊沿對齊模式:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

占空比

周期T內(nèi)CNT從0一直加到ARR,比如ARR為99, 那么CNT共計數(shù)100.

在看高電平的時間,CNT從0一直加到CCR,比如CCR是30,注意在等于30的瞬間,就已經(jīng)跳變?yōu)榈碗娖搅?,所以CNT從0到29是高電平,總共為30個數(shù)的時間

所以占空比為30/100=30%

電機控制:

剎車功能描述(強制關(guān)閉輸出,功能是防止電機損壞,此時輸出為設(shè)置的空閑電平):

stm32f103高級定時器,stm32,嵌入式硬件,單片機死區(qū)時間寄存器:

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機

stm32f103高級定時器,stm32,嵌入式硬件,單片機文章來源地址http://www.zghlxwxcb.cn/news/detail-829374.html

到了這里,關(guān)于stm32專題二十六:高級定時器介紹的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • STM32中TIM定時器定時功能詳解(適用基本,通用,高級定時器)

    STM32中TIM定時器定時功能詳解(適用基本,通用,高級定時器)

    定時器有高級定時器、通用定時器、基本定時器三種類型。具體功能如下。 上面是每種定時器所具有的功能。 我們可以看到每種定時器都有一個定時功能,(可能是名字的由來吧)。當(dāng)然,每個定時器都可以來使用定時功能,但是我們往往在基本定時器和通用定時器上面使用

    2024年01月19日
    瀏覽(31)
  • STM32TIM定時器PWM輸出比較(適用于通用,高級定時器)

    STM32TIM定時器PWM輸出比較(適用于通用,高級定時器)

    在定時器中我們最常用的功能就是輸出PWM,大多是用在電機控制方面,目前網(wǎng)絡(luò)上相關(guān)資料也有很多,但是,很多不利于我們“現(xiàn)搜現(xiàn)用”我這里不是說我寫的有多好,而是你搜索到此類文章時大部分是急于解決目前的問題,一段相關(guān)代碼和講解就行,當(dāng)然不是學(xué)習(xí)背后的原

    2024年01月25日
    瀏覽(22)
  • STM32——高級定時器輸出比較模式實驗

    STM32——高級定時器輸出比較模式實驗

    1,配置定時器基礎(chǔ)工作參數(shù) HAL_TIM_OC_Init() 2,定時器PWM輸出MSP初始化 HAL_TIM_OC_MspInit() 配置NVIC、CLOCK、GPIO等 3,配置PWM模式/比較值等 HAL_TIM_OC_ConfigChannel() 4,使能通道預(yù)裝載 __HAL_TIM_ENABLE_OCxPRELOAD() 5,使能輸出、主輸出、計數(shù)器 HAL_TIM_OC_Start() 6,修改捕獲/比較寄存器的值 _HAL

    2024年02月02日
    瀏覽(56)
  • STM32使用高級定時器輸出互補pwm波

    STM32使用高級定時器輸出互補pwm波

    最近做的一個項目用到stm32,網(wǎng)上查了很多資料,也踩了很多坑,這里記錄一下配置的步驟和說明 硬件使用的是stm32h750vbt6; 軟件用到了stm32cubemx和keil5; 打開Debug模式方便調(diào)試,可以忽略,不影響代碼運行 在用cube配置時鐘源時,有下面三個選項 Disable(禁用) BYPASS Clock Sou

    2024年02月16日
    瀏覽(20)
  • STM32高級定時器輸出指定數(shù)量PWM(STM32CubeMx配置)

    STM32高級定時器輸出指定數(shù)量PWM(STM32CubeMx配置)

    高級定時器中有一個重復(fù)計數(shù)器,本實驗輸出指定個數(shù)PWM就是利用了重復(fù)計數(shù)器的特性,先來看看重復(fù)計數(shù)器的特性是什么: 計數(shù)器每次上溢或下溢都能使重復(fù)計數(shù)器減1,減到0時,再發(fā)生一次溢出就會產(chǎn)生更新事件 這是什么意思呢,這里舉個例子比如說我設(shè)定重復(fù)計數(shù)器的

    2024年02月02日
    瀏覽(23)
  • STM32F407高級定時器-死區(qū)時間研究-STM32CubeMX

    STM32F407高級定時器-死區(qū)時間研究-STM32CubeMX

    距離上次寫筆記,已經(jīng)過去好長時間了 中間也折騰過不少東西,但是都沒咋整理,主要是這中間都是在干活兒,不是自己想要研究的,也沒想著要寫。 從去年10月份開始想要學(xué)習(xí)FOC,10月份研究了一個月,到11月初,實現(xiàn)了SVPWM驅(qū)動BLDC電機,使用串口實現(xiàn)開環(huán)下轉(zhuǎn)速和力矩調(diào)

    2023年04月23日
    瀏覽(27)
  • STM32實戰(zhàn)-高級定時器帶死區(qū)的互補PWM輸出

    STM32實戰(zhàn)-高級定時器帶死區(qū)的互補PWM輸出

    前言: 平時我們設(shè)計點擊驅(qū)動電路時,一般會采用npn和pnp三極管,來控制電機的導(dǎo)通和關(guān)閉,但是三級管內(nèi)部自帶電容,斷電后不會立馬斷掉,會經(jīng)過很小的一段時間才會放電完畢,這時候要留有死區(qū)給電容放電,這就有了互補pwm波。 ? 同時,當(dāng)電機出現(xiàn)故障,如果利用軟

    2024年02月08日
    瀏覽(21)
  • STM32——高級定時器輸出指定個數(shù)PWM波原理及實戰(zhàn)

    STM32——高級定時器輸出指定個數(shù)PWM波原理及實戰(zhàn)

    相比于通用定時器特性: 1)重復(fù)計數(shù)器 2)死區(qū)時間帶可編程的互補輸出 3)斷路輸入,用于將定時器的輸出信號置于用戶可選的安全配置中 1,配置定時器基礎(chǔ)工作參數(shù) HAL_TIM_PWM_Init() 2,定時器PWM輸出MSP初始化 HAL_TIM_PWM_MspInit() 配置NVIC、CLOCK、GPIO等 3,配置PWM模式/比較值等

    2024年01月16日
    瀏覽(21)
  • stm32f407探索者開發(fā)板(二十二)——通用定時器基本原理講解

    stm32f407探索者開發(fā)板(二十二)——通用定時器基本原理講解

    STM32F40x系列總共最多有14個定時器 三種(4)STM32定時器區(qū)別 STM3 F4 的通用 TIMx (TIM2、TIM3、TIM4 和 TIM5)定時器功能特點包括: 16 /32 位向上、向下、向上/向下(中心對齊)計數(shù)模式,自動裝載計數(shù)器(TIMx_CNT)。 16 位可編程(可以實時修改)預(yù)分頻器(TIMx_PSC),計數(shù)器時鐘頻率的分頻系

    2024年02月12日
    瀏覽(26)
  • 野火STM32電機系列(五)Cubemx配置高級定時器TIM1

    野火STM32電機系列(五)Cubemx配置高級定時器TIM1

    鴿了一段時間,放心不會斷的哈,目前僅僅是顯示屏壞了,不影響后面項目 前文已經(jīng)配置了GPIO、編碼器 本節(jié)講解CubeMX高級定時器TIM1配置帶死區(qū)的6路互補的PWM 同時配置信號觸發(fā)后續(xù)ADC采集 板子引角的原理圖如下 對應(yīng)的: Motor1--U+--PA8--TIM1_CH1 Motor1--U---PB13--TIM1_CH1N Motor1--V+--

    2024年02月15日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包