一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用STM32高精度定時(shí)器實(shí)現(xiàn)PWM輸出的實(shí)現(xiàn)原理

茶話MCU ? 來(lái)源:ST MCU 信息交流 ? 2020-05-14 09:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

很多STM32系列的MCU內(nèi)置高精度定時(shí)器,比方STM32F334、STM32G4、STM32H7等系列。利用高精度定時(shí)器實(shí)現(xiàn)PWM輸出應(yīng)該說(shuō)是最基本的功能了。不過(guò),在實(shí)際應(yīng)用中,常有人覺得無(wú)法實(shí)現(xiàn)duty=0或duty=100%的PWM輸出情形。這里以STM32F334的HRTIM為例,簡(jiǎn)單介紹下利用它實(shí)現(xiàn)PWM輸出的實(shí)現(xiàn)原理。

STM32F334的HRTIM的功能框圖如下,由一個(gè)MASTER定時(shí)器和ABCDE五個(gè)定時(shí)器單元組成。其中ABCDE五個(gè)定時(shí)器單元各可以產(chǎn)生2路輸出信號(hào),并支持互補(bǔ)輸出。

先看看跟HRTIM有關(guān)的時(shí)鐘。別的系列有支持向上、向下計(jì)數(shù)模式的。

在利用HRTIM中的定時(shí)器單元實(shí)現(xiàn)PWM輸出時(shí),基于不同的分頻系數(shù)對(duì)應(yīng)著不同的分辨率和最低頻率。如下表所示:【截圖來(lái)自STM32F334的參考手冊(cè)】

顯然,不同分頻比對(duì)應(yīng)不同的計(jì)數(shù)時(shí)鐘fHRCK,根據(jù)計(jì)數(shù)時(shí)鐘結(jié)合16位的計(jì)數(shù)寬度可求出最長(zhǎng)計(jì)數(shù)時(shí)間,亦即最小的PWM輸出頻率。

但對(duì)于高精度定時(shí)器HRTIM,由于其自身特定機(jī)制的原因,在實(shí)現(xiàn)PWM功能時(shí),設(shè)計(jì)比較值和計(jì)數(shù)周期值時(shí)需遵循下面兩個(gè)原則:【注意是FHRTIM時(shí)鐘單位,即未被倍頻的時(shí)鐘,這里就是那個(gè)144Mhz時(shí)鐘】

1、 最小值必須不小于3個(gè)fHRTIM時(shí)鐘單位;

2、最大值不得大于0xFFFE個(gè)fHRTIM時(shí)鐘單位;

剛才上面說(shuō)了,HRTIM里面的定時(shí)器單元所用的計(jì)數(shù)時(shí)鐘是fHRTIM先經(jīng)過(guò)倍頻后再經(jīng)過(guò)分頻器而來(lái)的,那么結(jié)合上面的兩個(gè)原則,不同分頻比條件下可以設(shè)定的計(jì)數(shù)周期或比較值的范圍就對(duì)應(yīng)到如下表格:

上面表格就是定時(shí)器單元不同分頻比時(shí)可以設(shè)置的計(jì)數(shù)周期值或用于比較的比較寄存器的值的范圍。比方我們以上面TABLE82中的CKPSC=3時(shí)來(lái)看看。CKPSC=3,從上面Table81可以得知此時(shí)的計(jì)數(shù)時(shí)鐘為源時(shí)鐘倍頻后的8分頻,我們?cè)谠O(shè)計(jì)PWM計(jì)數(shù)周期值或比較值時(shí)就要求在0x00c~~0xFFFB范圍內(nèi)配置。鑒于此,有人就得出沒法實(shí)現(xiàn)PWM輸出的0占空比或100%占空比的結(jié)論,其實(shí)這是誤解。

假設(shè)此時(shí)我們所需要的PWM周期值剛好0xff00.那么比較寄存器CMP的值就可以在0x000c~~0xff00任意設(shè)置并能實(shí)現(xiàn)有效、可靠比較,顯然,CMP值不要小于0x000c這個(gè)起點(diǎn)值【實(shí)際上Table82中的Min值都是對(duì)應(yīng)著3個(gè)fHRTIM源時(shí)鐘單位,因不同分頻比而呈現(xiàn)不同數(shù)據(jù)而已】,那這不是說(shuō)PWM輸出不能實(shí)現(xiàn)0占空比的情況嗎?非也!

對(duì)于HRTIM的輸出,通常是根據(jù)計(jì)數(shù)器的值與比較寄存器的值發(fā)生相等匹配事件時(shí)進(jìn)行SET【置1】或RESET【清零】輸出。【用過(guò)STM32常規(guī)定時(shí)器的人這里可能會(huì)感受到一些差異?!?/p>

比方如上圖所示,在發(fā)生比較事件時(shí)做RESET輸出,發(fā)生PER周期性事件時(shí)做SET輸出。

顯然,當(dāng)我們不斷增加CMP的值,占空比也會(huì)相應(yīng)增大。當(dāng)CMP的值增加到剛好等于PER的值時(shí),則輸出RESET。因?yàn)榇藭r(shí)CMP比較事件、PER周期性事件在同一時(shí)間點(diǎn)發(fā)生,會(huì)涉及到事件競(jìng)爭(zhēng)的仲裁問(wèn)題。由于比較事件響應(yīng)優(yōu)先級(jí)高于周期性事件的,所以此時(shí)的輸出按比較事件來(lái)定,這里輸出RESET,此時(shí)也剛好對(duì)應(yīng)著Duty=0的情形。兩個(gè)事件總是同時(shí)發(fā)生,而PER事件競(jìng)爭(zhēng)不過(guò)CMP事件,輸出只好由CMP事件說(shuō)了算。

按照這種配置,那又如何實(shí)現(xiàn)Duty=100%的輸出呢?

很簡(jiǎn)單,當(dāng)我們將CMP的值設(shè)置成任意被PER還大的值時(shí),就始終輸出SET信號(hào)了。因?yàn)榇藭r(shí)CMP永遠(yuǎn)不會(huì)等于PER,即不會(huì)發(fā)生有效比較匹配事件,無(wú)有效比較事件則不會(huì)有RESET的輸出,輸出始終由PER事件掌控。

在基于HRTIM做PWM輸出時(shí),弄清了原理后就知道如何靈活編寫代碼了。上面只是大致做了PWM輸出的原理介紹,更多細(xì)節(jié)還是得細(xì)看手冊(cè),比方上面提到的定時(shí)器事件及事件響應(yīng)競(jìng)爭(zhēng)時(shí)的仲裁。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    116

    文章

    5502

    瀏覽量

    219337
  • STM32
    +關(guān)注

    關(guān)注

    2293

    文章

    11031

    瀏覽量

    364733
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3298

    瀏覽量

    118865

原文標(biāo)題:STM32高精度定時(shí)器PWM輸出話題

文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    MCU定時(shí)器/計(jì)數(shù)

    架構(gòu)與功能特性? 定時(shí)器類型與配置? 高級(jí)控制定時(shí)器?:支持互補(bǔ)PWM輸出與剎車功能,適用于電機(jī)驅(qū)動(dòng)等高精度控制場(chǎng)景。通用
    的頭像 發(fā)表于 04-27 13:54 ?290次閱讀

    瑞薩RA8D1單片機(jī)輸出PWM實(shí)現(xiàn)方法

    也有通過(guò)定時(shí)器中斷控制IO高低電平輸出實(shí)現(xiàn)的。
    的頭像 發(fā)表于 04-11 17:07 ?3220次閱讀
    瑞薩RA8D1單片機(jī)<b class='flag-5'>輸出</b><b class='flag-5'>PWM</b><b class='flag-5'>實(shí)現(xiàn)</b>方法

    TPS3851 帶集成看門狗定時(shí)器高精度電壓監(jiān)控數(shù)據(jù)手冊(cè)

    TPS3851 將精密電壓監(jiān)控與可編程看門狗定時(shí)器相結(jié)合。TPS3851比較的欠壓 (V ) 精度為 0.8% (–40°C 至 +125°C) ~ITN~ ) 閾值。該TPS38
    的頭像 發(fā)表于 04-10 16:04 ?388次閱讀
    TPS3851 帶集成看門狗<b class='flag-5'>定時(shí)器</b>的<b class='flag-5'>高精度</b>電壓監(jiān)控<b class='flag-5'>器</b>數(shù)據(jù)手冊(cè)

    TPS3852-Q1 汽車級(jí)高精度電壓監(jiān)控,帶集成窗口看門狗定時(shí)器數(shù)據(jù)手冊(cè)

    溫度范圍內(nèi)實(shí)現(xiàn) 0.8% 的精度。 此外,TPS3852-Q1 具有精確的磁滯,使該器件非常適合與緊公差系統(tǒng)一起使用。監(jiān)控?RESET?delay 具有 15% 精度
    的頭像 發(fā)表于 04-10 15:08 ?357次閱讀
    TPS3852-Q1 汽車級(jí)<b class='flag-5'>高精度</b>電壓監(jiān)控<b class='flag-5'>器</b>,帶集成窗口看門狗<b class='flag-5'>定時(shí)器</b>數(shù)據(jù)手冊(cè)

    TPS3851-Q1 帶集成看門狗定時(shí)器的汽車級(jí)高精度電壓監(jiān)控數(shù)據(jù)手冊(cè)

    TPS3851-Q1 器件將精密電壓監(jiān)控與可編程看門狗定時(shí)器相結(jié)合。TPS3851-Q1 比較在欠壓 (V 下) 的精度為 0.8% (–40°C 至 +125°C) ~ITN~
    的頭像 發(fā)表于 04-10 14:45 ?333次閱讀
    TPS3851-Q1 帶集成看門狗<b class='flag-5'>定時(shí)器</b>的汽車級(jí)<b class='flag-5'>高精度</b>電壓監(jiān)控<b class='flag-5'>器</b>數(shù)據(jù)手冊(cè)

    使用stm32f405做6步pwm輸出時(shí),定時(shí)器配置由強(qiáng)制輸出轉(zhuǎn)為pwm,com觸發(fā)后會(huì)有延遲生效的現(xiàn)象,怎么解決?

    我在使用stm32f405做6步pwm輸出時(shí)發(fā)現(xiàn),定時(shí)器的配置由pwm改為強(qiáng)制輸出后會(huì)在com觸
    發(fā)表于 03-13 07:24

    如何使用定時(shí)器在任意IO輸出PWM?

    在CubeMx內(nèi)的配置,計(jì)劃在PA2口輸出PWM控制風(fēng)機(jī),但是TIM2已經(jīng)初始化做輸入捕獲用了,因此需要用到別的未使用的定時(shí)器在PA2口輸出PWM
    發(fā)表于 03-13 06:04

    stm32同一個(gè)定時(shí)器不同的通道,可以不同時(shí)的輸出pwm波形嗎?

    請(qǐng)問(wèn),stm32的同一個(gè)定時(shí)器,不同的通道,可以不同時(shí)的輸出pwm波形嗎?比如tim1的ch1輸出,延時(shí)幾毫秒后tim1的ch2
    發(fā)表于 03-07 08:20

    詳解CKS32F107xx系列的定時(shí)器同步功能

    CKS32F107xx系列部分定時(shí)器在內(nèi)部是相連的,可用于定時(shí)器同步或鏈接,方便用戶配置不同的同步模式,以便在電機(jī)控制、數(shù)據(jù)采集和PWM信號(hào)生成等應(yīng)用中,實(shí)現(xiàn)復(fù)雜的時(shí)間序列和多通道的同
    的頭像 發(fā)表于 11-26 17:51 ?1048次閱讀
    詳解CKS32F107xx系列的<b class='flag-5'>定時(shí)器</b>同步功能

    利用瓦級(jí)皮秒激光實(shí)現(xiàn)高精度空間碎片觀測(cè)

    ? 中國(guó)科學(xué)院上海天文臺(tái)與紫金山天文臺(tái)聯(lián)合改造德令哈青海觀測(cè)站1.2米望遠(yuǎn)鏡,利用瓦級(jí)的皮秒激光實(shí)現(xiàn)了對(duì)空間碎片的高精度激光測(cè)距??臻g碎片目標(biāo)測(cè)量最遠(yuǎn)距離為1620.5 km,雷達(dá)散
    的頭像 發(fā)表于 11-18 06:25 ?477次閱讀
    <b class='flag-5'>利用</b>瓦級(jí)皮秒激光<b class='flag-5'>器</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>高精度</b>空間碎片觀測(cè)

    高級(jí)定時(shí)器PWM輸入模式的配置方法

    我們將向大家介紹高級(jí)定時(shí)器的另一個(gè)常見應(yīng)用——PWM輸入模式。在本節(jié)課中,我們將先圍繞輸入捕獲模式展開,并重點(diǎn)描述PWM輸入模式和涉及的寄存,最后通過(guò)一個(gè)實(shí)驗(yàn)例程去介紹
    的頭像 發(fā)表于 11-08 16:48 ?4343次閱讀
    高級(jí)<b class='flag-5'>定時(shí)器</b><b class='flag-5'>PWM</b>輸入模式的配置方法

    如何在MSP430?上實(shí)現(xiàn)內(nèi)置振蕩高精度定時(shí)器

    電子發(fā)燒友網(wǎng)站提供《如何在MSP430?上實(shí)現(xiàn)內(nèi)置振蕩高精度定時(shí)器.pdf》資料免費(fèi)下載
    發(fā)表于 09-14 11:10 ?0次下載
    如何在MSP430?上<b class='flag-5'>實(shí)現(xiàn)</b>內(nèi)置振蕩<b class='flag-5'>器</b>的<b class='flag-5'>高精度</b><b class='flag-5'>定時(shí)器</b>

    面向車載設(shè)備,帶看門狗定時(shí)器、輸出電壓升降監(jiān)控復(fù)位功能的 LDO穩(wěn)壓“NP4271”系列產(chǎn)品上市

    和早期發(fā)現(xiàn)故障,需要追加電壓監(jiān)控功能和冗余設(shè)計(jì)的電子控制應(yīng)用在不斷增加。因此,對(duì)從外部監(jiān)控微控制( MCU )的看門狗定時(shí)器( WDT )和輸出電壓監(jiān)控復(fù)位功能的高精度需求也在不斷增
    的頭像 發(fā)表于 09-02 10:06 ?780次閱讀
    面向車載設(shè)備,帶看門狗<b class='flag-5'>定時(shí)器</b>、<b class='flag-5'>輸出</b>電壓升降監(jiān)控復(fù)位功能的 LDO穩(wěn)壓<b class='flag-5'>器</b>“NP4271”系列產(chǎn)品上市

    GD32E230C8T6高級(jí)定時(shí)器timer0無(wú)法正常輸出PWM波形的原因?

    原本想用高級(jí)定時(shí)器的中央對(duì)齊計(jì)數(shù)模式來(lái)輸出SPWM波,但是TIMER0的CH0,CH1等口,都無(wú)法正常輸出PWM波形,換成普通定時(shí)器就可以了
    發(fā)表于 07-26 06:34

    請(qǐng)問(wèn)如何使用定時(shí)器在任意IO輸出PWM?

    問(wèn)題描述: 在CubeMx內(nèi)的配置,計(jì)劃在PA2口輸出PWM控制風(fēng)機(jī),但是TIM2已經(jīng)初始化做輸入捕獲用了,因此需要用到別的未使用的定時(shí)器在PA2口輸出
    發(fā)表于 07-24 06:38