国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

關于定時器輸出的PWM頻率范圍及占空比精度

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-12 10:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我想要TIM定時器輸出的PWM波形:0.1%精度占空比, 頻率范圍:200Hz - 10KHz。請問能實現嗎?

Ⅰ寫在前面

如果有朋友下載了上一篇文章我提供的例程,在“bsp_timer.h”文件下,你就會發現有如下一段被我注釋了的【說明性文字】。

這個工程是我從之前項目中提取出來(復制部分代碼),從新整理的一個的工程。里面的這個被注釋了的描述文字是之前整理的,今天重新對其說明一下。

這里句題外話:

我一般都是注重讓大家明白其原理,提供的工程代碼以簡單為原則。比如:沒有添加系統,沒有添加參數越界檢查等額外的代碼。不是讓你直接拷貝過去就用,一般需要結合你實際工程,對其修改。

Ⅱ解讀那段文字

想要認真掌握定時器輸出PWM的朋友,可以品味一下那段文字。

1.定時器的位數

STM32中,定時器分16位和32位,這個好理解。簡單的來說,就是16位定時器相關的寄存器包含計數器是16位的,計數的范圍是0 ~ 0xFFFF。同理,32位計數范圍為0 ~ 0xFFFF FFFF。

當然,上面提到的相關的寄存器,其實只有幾個,計數器、自動重載寄存器、捕獲/比較寄存器等,具體請參看手冊中關于TIM寄存器章節。

截圖中,頻率的范圍,其實說明了32位定時器的優勢。但是,在STM32中,有些型號的MCU是沒有32位的定時器的(具體請見選型手冊,或數據手冊)。

2.占空比,周期(頻率)

PWM占空比是指在一個脈沖循環內,通電時間相對于總時間所占的比例。

比如:拿1KHz波形來說,占空比為20%,即高電平0.2ms。

在STM32定時器中,占空比其實是對應【捕獲/比較寄存器】的值,你可看見我提供的代碼:

#define PWM_TIM_SetComparex TIM_SetCompare1

捕獲/比較寄存器有1,2,3,4,對應的其實是你輸出的通道。

占空比的數值,需要結合PWM的頻率,所以代碼中是:

pwm_pulse = (pwm_period + 1)*Dutycycle / 100;

pwm_period:是PWM周期值;

/100代表:占空比的大小。

周期值:其實就是【自動重載寄存器 (TIMx_ARR)】是值;

看見我標記為紅色的文字沒有?這兩個值決定了PWM的周期和占空比。

3.計算頻率和占空比

頻率 = 1/周期; 1KHz的周期 = 0.001秒,即1ms.

波形頻率(周期)案例:

假如計數時鐘CK_CNT(看上圖)一秒鐘計數10M次:

我們需要1KHz波形,即1ms(波形1K)CNT計數個數為10K個,自動重載寄存器ARR設定值為10K。

我們需要10KHz波形,同理:自動重載寄存器設定值為100K。

占空比(1KHz波形)案例:

假如CK_CNT一秒鐘計數1M次:

我們需要1KHz,0.1占空比波形:同上分析,ARR的值為1K,則捕獲/比較寄存器 1 (TIMx_CCR1)值為1。(為什么是1? 1KHz * 0.1%就等于1)

我們需要10KHz,0.1占空比波形:同理計算CCR1值:等于1KHz * 0.1%就等于0.1。顯然

兩案例的結論:

1.100K > 65535,對于16位定時器來說,肯定不行啊。對于32位定時器就行。

2.CCR1的值不可能為0.1。

3.我們就需要改變計數時鐘CK_CNT來達到要求,也就是分頻。

4.自己設定邊界值,通過修改TIMx_PSC、TIMx_ARR和TIMx_CCR三個寄存器參數,來滿足自己要求。如果不能滿足,那么選擇32位定時器。如果32位都還不能滿足,那就······

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

    關注

    116

    文章

    5869

    瀏覽量

    225612
  • STM32
    +關注

    關注

    2309

    文章

    11162

    瀏覽量

    373423
  • 定時器
    +關注

    關注

    23

    文章

    3368

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【瑞薩RA × Zephyr開發板評測】+動態調節PWM占空比測試

    GTPR 設置的值)/下溢 ? 周期計數功能完成 本設計在每個周期溢出時產生中斷,進一步調節占空比,使用P213引腳作為PWM輸出端口,生成動態可調節占空比
    發表于 01-20 19:18

    LAT1173高精度定時器的同步功能應用筆記

    STM32G474 所含的高精度定時器(HRTIMER)其實包含了多個定時器,多個定時器之間可以單獨工作,也可以進行同步,且高精度
    發表于 01-11 17:32 ?0次下載

    LAT1183+高精度定時器中 single-shot 計數模式不工作應用筆記

    PWM 輸出,在調試模式下發現該子定時器的計數一直為 0,即計數一直沒有啟動,但如果將計數方式修改為continuous 模式,其他保
    發表于 01-11 17:28 ?0次下載

    CW32系列微控制的時鐘源和定時器選項介紹

    ,用于基本的定時和計數功能。 高級定時器:這種定時器通常具有更多的功能和更高的精度,可以用于更復雜的定時和計數任務,如
    發表于 12-16 06:26

    CW32通用定時器輸出比較

    定時器輸出比較功能,對應上圖下半部分右側的輸出功能。這種方式可以便捷快速地輸出一個可輕松修改占空比的方波,而這種對信號的處理方式,也叫做
    發表于 12-11 06:45

    CW32L010+定時器介紹

    和預分頻系數,可以實現精確的定時控制。例如,在鬧鐘應用中,可以使用定時器來設置鬧鐘的響鈴時間。 PWM輸出:高級控制PWM
    發表于 12-01 07:53

    PWM定時器、SysTick 區別及應用場景

    在單片機和嵌入式開發中,經常會遇到PWM(脈寬調制)、定時器、SysTick(系統滴答定時器)這幾個詞。很多初學者容易把它們混為一談,以為都是“定時相關的東西”。其實,它們在本質和應用
    的頭像 發表于 11-17 10:53 ?508次閱讀
    <b class='flag-5'>PWM</b>、<b class='flag-5'>定時器</b>、SysTick 區別及應用場景

    【RA-Eco-RA6M4開發板評測】PWM輸出

    的控制。 在瑞薩RA6M4系列 MCU 中有兩種定時器,一種是通用 PWM 定時器 GPT,另外一種是異步通用定時器 AGT,在這里我們使用通用定時
    發表于 11-09 21:30

    定時器同步之并行模式

    事件作為 TRGOUT 源,用于觸發兩個從定時器。TMR3 和 TMR4 作為從定時器,開啟掛起模式用于與主定時器進行同步。并且使能 TMR2_CH1,TMR3_CH1,TMR4_CH1 比較
    發表于 09-22 09:56

    【RA4M2-SENSOR】3、使用GPT定時器-PWM輸出

    結合起來使用的話可以實現更加豐富的功能, 可以對輸入信號進行計數,可以測量輸入信號的脈沖寬度,可以輸出單個脈沖、PWM 等波形,等等。 通過定時器生成 PWM 波形信號來控制電機狀態是
    發表于 09-01 15:20

    【沁恒CH585開發板免費試用體驗】PWM 輸出

    PWM4~PWM11)或6 路 16 位 PWM 輸出PWM4~PWM9),
    發表于 07-05 23:16

    【RA-Eco-RA4M2開發板評測】RA-Eco-RA4M2 PWM輸出

    Cycle Percent:設置PWM占空比,當然也可通過代碼修改,這里就設置為50 GTIOCB Output Enabled:使能 GTIOCB 輸出 GTIOCB Stop Level:設置
    發表于 04-28 22:57

    MCU定時器/計數

    架構與功能特性? 定時器類型與配置? 高級控制定時器?:支持互補PWM輸出與剎車功能,適用于電機驅動等高精度控制場景。通用
    的頭像 發表于 04-27 13:54 ?776次閱讀

    如何使用定時器在任意IO輸出PWM

    在CubeMx內的配置,計劃在PA2口輸出PWM控制風機,但是TIM2已經初始化做輸入捕獲用了,因此需要用到別的未使用的定時器在PA2口輸出PWM
    發表于 03-13 06:04

    stm32同一個定時器不同的通道,可以不同時的輸出pwm波形嗎?

    請問,stm32的同一個定時器,不同的通道,可以不同時的輸出pwm波形嗎?比如tim1的ch1輸出,延時幾毫秒后tim1的ch2輸出。 現在
    發表于 03-07 08:20