哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

利用STM32F334的HRTIM實現(xiàn)PWM輸出的實現(xiàn)原理

茶話MCU ? 來源:ST MCU 信息交流 ? 2020-06-15 09:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

1、 最小值必須不小于3個fHRTIM時鐘單位;

2、最大值不得大于0xFFFE個fHRTIM時鐘單位;

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

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

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

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

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

顯然,當我們不斷增加CMP的值,占空比也會相應增大。當CMP的值增加到剛好等于PER的值時,則輸出RESET。因為此時CMP比較事件、PER周期性事件在同一時間點發(fā)生,會涉及到事件競爭的仲裁問題。由于比較事件響應優(yōu)先級高于周期性事件的,所以此時的輸出按比較事件來定,這里輸出RESET,此時也剛好對應著Duty=0的情形。兩個事件總是同時發(fā)生,而PER事件競爭不過CMP事件,輸出只好由CMP事件說了算。

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

很簡單,當我們將CMP的值設(shè)置成任意被PER還大的值時,就始終輸出SET信號了。因為此時CMP永遠不會等于PER,即不會發(fā)生有效比較匹配事件,無有效比較事件則不會有RESET的輸出,輸出始終由PER事件掌控。

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

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

    關(guān)注

    116

    文章

    5891

    瀏覽量

    226525
  • STM32
    +關(guān)注

    關(guān)注

    2312

    文章

    11189

    瀏覽量

    374557
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3372

    瀏覽量

    124462

原文標題:STM32高精度定時器PWM輸出話題

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    STM32F334x4/6/8微控制器:高性能與低功耗的完美結(jié)合

    STM32F334x4/6/8微控制器:高性能與低功耗的完美結(jié)合 在當今的電子設(shè)計領(lǐng)域,微控制器的性能和功能對于產(chǎn)品的成功至關(guān)重要。STMicroelectronics推出的STM32F334
    的頭像 發(fā)表于 04-17 12:15 ?179次閱讀

    請問設(shè)計達人們,如何利用單片機的PWM模塊設(shè)計一個±5V的高驅(qū)動能力輸出的方波電路?

    如圖,我的需求是: 利用STM32F系列的PWM功能,可輸出0~3.3V占空比可調(diào)節(jié)的正弦波。 然后可以借助三極管、MOS等模擬電路構(gòu)建一個可輸出
    發(fā)表于 03-05 15:45

    LAT1189+Timer 結(jié)合 DMA 2D 通道實現(xiàn)不同波形輸出應用筆記

    TIM 來定時切換輸出正弦波或固定電平。使用 TIM 輸出 PWM 產(chǎn)生正弦波形時,需要結(jié)合 GPDMA 來實現(xiàn)。在 STM32U5 系列
    發(fā)表于 01-11 17:25 ?0次下載

    基于PWM的LED調(diào)光技術(shù)與呼吸燈實現(xiàn)方法!

    利用PWM技術(shù)控制LED亮度,不僅效率高、響應快,還能實現(xiàn)細膩的視覺過渡。系統(tǒng)介紹PWM的工作機制,結(jié)合具體硬件平臺,展示如何編程實現(xiàn)LED
    的頭像 發(fā)表于 12-15 13:03 ?650次閱讀
    基于<b class='flag-5'>PWM</b>的LED調(diào)光技術(shù)與呼吸燈<b class='flag-5'>實現(xiàn)</b>方法!

    LuatOS中PWM實現(xiàn)LED亮度調(diào)節(jié)與呼吸燈的實戰(zhàn)教程

    燈光效果。 PWM脈沖寬度調(diào)制 (Pulse Width Modulation,也稱為脈寬調(diào)制)——是利用微處理器的數(shù)字輸出對模擬電路進行控制的一種非常有效的技術(shù),廣泛應用于測量、通信、功率控制與變換等諸多領(lǐng)域。 ? 日常開發(fā)中
    的頭像 發(fā)表于 11-11 19:05 ?8611次閱讀
    LuatOS中<b class='flag-5'>PWM</b><b class='flag-5'>實現(xiàn)</b>LED亮度調(diào)節(jié)與呼吸燈的實戰(zhàn)教程

    stm32f103zet6芯片,根據(jù)官方配置的pwm一直沒有輸出,為什么?

    stm32f103zet6芯片,根據(jù)官方配置的pwm一直沒有輸出,求各位大佬指點一下
    發(fā)表于 10-10 07:07

    HRTIM可以通過TIM1觸發(fā)一個50ns到100ns的短脈沖嗎

    需求是想借助HRTIM的高精度定時器產(chǎn)生100ns的高質(zhì)量脈沖,但是單純用HRTIM頻率做不到那么低,想用其他定時器比如TIM1級聯(lián)觸發(fā),是否可以實現(xiàn)。我是新手小白,按照思路設(shè)置stm32
    發(fā)表于 09-01 16:53

    利用EasyGo DeskSim快速實現(xiàn)PWM波信號輸出

    EasyGo DeskSim是一款配置型的實時仿真軟件,它允許用戶將 Simulink 算法程序快速部署到 EasyGo 實時仿真機上。實時仿真機支持選配不同的 FPGA 芯片和 IO 模塊,能夠處理高速信號,并通過 IO 模塊輸出真實的仿真結(jié)果,可滿足用戶在科研、教學或工業(yè)測試中的多樣化需求。
    的頭像 發(fā)表于 08-30 09:53 ?1031次閱讀
    <b class='flag-5'>利用</b>EasyGo DeskSim快速<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>PWM</b>波信號<b class='flag-5'>輸出</b>

    如何將 GPIO PWM 和 GPIO Capture 驅(qū)動程序?qū)?Linux 內(nèi)核,實現(xiàn) PWM 輸出并檢測引腳的變化狀態(tài)?

    如何將 GPIO PWM 和 GPIO Capture 驅(qū)動程序?qū)?Linux 內(nèi)核,實現(xiàn) PWM 輸出并檢測引腳的變化狀態(tài)
    發(fā)表于 08-20 08:20

    請問怎么用HRTIM輸出可變占空比的PWM?

    現(xiàn)在可以輸出單路PWM,但可變占空比的PWM不知道怎么配置。請大佬幫助!
    發(fā)表于 07-25 08:16

    零知開源——STM32F4驅(qū)動MAX31865實現(xiàn)PT100高精度測溫

    STM32F
    PCB56242069
    發(fā)布于 :2025年05月26日 18:25:17

    基于小華HC32F334數(shù)字電源控制器的雙向DC/DC雙有源橋參考設(shè)計

    本文介紹了基于小華HC32F334數(shù)字電源控制器的雙向DC/DC雙有源橋(DAB,Dual Active Bridge)參考設(shè)計。
    的頭像 發(fā)表于 05-20 13:57 ?4907次閱讀
    基于小華HC32<b class='flag-5'>F334</b>數(shù)字電源控制器的雙向DC/DC雙有源橋參考設(shè)計

    使用 dsPIC30F 實現(xiàn) BLDC 電機的正弦電壓驅(qū)動

    簡介 在 BLDC 電機應用中,由于存在噪音和轉(zhuǎn)矩脈動問題,使用三相正弦波電壓代替六拍電壓是一種理想的控制方法。本文檔介紹的應用軟件利用 dsPIC30F 數(shù)字信號控制器高效且可靠地實現(xiàn)了 BLDC
    發(fā)表于 05-14 15:56

    HRTIM變頻控制輸出的第一個周期頻率異常的原因?

    在使用STM32G474CBT6的HRTIM_Mater、HRTIM_TIMER_B和HRTIM_TIMER_D輸出同步互補的四路
    發(fā)表于 04-25 06:17

    HRTIM變頻控制輸出的第一個周期頻率異常的原因?

    在使用STM32G474CBT6的HRTIM_Mater、HRTIM_TIMER_B和HRTIM_TIMER_D輸出同步互補的四路
    發(fā)表于 04-22 12:08
    万载县| 澄江县| 边坝县| 哈巴河县| 乌恰县| 玛纳斯县| 克拉玛依市| 太仆寺旗| 阿图什市| 永福县| 海安县| 旅游| 腾冲县| 永新县| 万荣县| 加查县| 新密市| 阿拉尔市| 紫金县| 阿拉善左旗| 陇西县| 博爱县| 博湖县| 漳浦县| 皋兰县| 浦江县| 高雄县| 夏津县| 遵义县| 怀来县| 内黄县| 旺苍县| 沧源| 绥芬河市| 泸州市| 河西区| 泗阳县| 郁南县| 石泉县| 灵寿县| 安图县|