chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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í)器做PWM輸出時(shí)的電平話題

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

掃碼添加小助手

加入工程師交流群

經(jīng)常有人問起STM32定時(shí)器做PWM輸出時(shí)的電平話題,這里就聊聊該話題。

對(duì)于STM32常規(guī)定時(shí)器,其比較輸出模式除了強(qiáng)制輸出模式以外,還有匹配切換模式、PWM輸出模式,不論是匹配切換模式還是PWM輸出模式,最終的輸出電平由計(jì)數(shù)器的值與比較寄存器的值之比較結(jié)果,并結(jié)合極性選擇位來(lái)決定。

當(dāng)極性選擇位為0時(shí),OCx端的輸出跟比較輸出控制器的輸出信號(hào)OCxREF保持同相,當(dāng)極性選擇位為1時(shí),OCx端的輸出跟比較輸出控制器的輸出信號(hào)OCxREF保持反相關(guān)系。

下圖是一常規(guī)定時(shí)器的通道4的輸出結(jié)構(gòu)框圖.

我們?cè)谑褂?a target="_blank">TIMER的pwm過程中,當(dāng)通過關(guān)閉計(jì)數(shù)器停止PWM輸出時(shí),由于停止時(shí)間點(diǎn)的隨機(jī)性導(dǎo)致計(jì)數(shù)器的值不定,進(jìn)而引起CNT的值與CCR的值出現(xiàn)不定的比較結(jié)果,最終體現(xiàn)在OC輸出端呈現(xiàn)不確定的電平。有些時(shí)候,我們停止或暫停PWM輸出時(shí)往往希望OC輸出端呈現(xiàn)我們所期望的電平。

這個(gè)怎么辦呢?方法一般可以有下面幾種。

第一種,將相關(guān)PWM輸出的GPIO口的復(fù)用功能取消,對(duì)其進(jìn)行GPIO的高低控制。這種方法簡(jiǎn)單可行,有點(diǎn)粗暴。但不影響定時(shí)器的現(xiàn)有輸出配置。要恢復(fù)功能的話,需重新對(duì)GPIO做復(fù)用配置。

第二種,采用定時(shí)器輸出模式中的強(qiáng)制輸出,將相應(yīng)的OC端輸出指定的高低電平。

這種方法,同樣簡(jiǎn)單有效。不影響GPIO配置,但影響了定時(shí)器的現(xiàn)有輸出配置。要恢復(fù)PWM功能時(shí)需重新對(duì)定時(shí)器的輸出功能做配置。

第三種,通過修改CCR為特別的值,將CCR的值與CNT的比較結(jié)果固定下來(lái),從而得到所期望的輸出電平。

第一種、第二種方式,可行但稍顯繁瑣了點(diǎn)。除非不需要PWM輸出了,不然還得重新配置回去。這里重點(diǎn)介紹第三種,簡(jiǎn)單地修改CCR寄存器地值而鎖定OC腳的輸出電平,要繼續(xù)輸出PWM的話,只需修改CCR值即可,無(wú)須其它配置。

下圖是定時(shí)器某通道的PWM輸出波形示意圖。采用PWM1輸出模式,計(jì)數(shù)器采用向上計(jì)數(shù)模式。極性選擇為高有效,即極性控制位CCxP=0。此時(shí)OCx輸出將與中間參考信號(hào)OCxREF同相輸出。其中ARR=8。

從上圖中我們看到,當(dāng)CCR的值取0或比ARR值還大時(shí),OCxREF將保持固定電平輸出,相應(yīng)地OCx端也會(huì)結(jié)合極性選擇位輸出固定電平?;谶@個(gè)特性,我們可以隨時(shí)修改某通道的CCR值來(lái)取消其PWM輸出。【嚴(yán)格上講,不能說取消了它的PWM輸出,只是輸出了一個(gè)固定電平,占空比為100%或0】

上面是針對(duì)非互補(bǔ)通道停止PWM輸出的確定電平的實(shí)施方案。有人會(huì)問那對(duì)于互補(bǔ)通道的PWM輸出的中途停止,電平如何確定呢?這個(gè)問題其實(shí)有點(diǎn)怪,但偏偏常有人問起。

通常情況下,對(duì)于互補(bǔ)輸出通道不同狀態(tài)下的輸出特性,在STM32參考手冊(cè)中高級(jí)定時(shí)器的寄存器描述中有個(gè)表格都羅列出來(lái)了。下圖是STM32F4參考手冊(cè)中TIM1的互補(bǔ)通道輸出特性表【只是完整表格中的一部分,主輸出使能的情況下】。

對(duì)于PWM互補(bǔ)輸出的停止,可能是停止1個(gè)通道,也可能停止一對(duì)互補(bǔ)通道,即2個(gè)通道。

如果只需停止1個(gè)通道的輸出,我們可以參考上述表格來(lái)配置。

若希望停止了PWM輸出的OCx端輸出低電平,我們可以選擇上圖中橙色欄的配置。

若希望停止了PWM輸出的OCx端輸出高電平,這時(shí)情況稍微復(fù)雜些。

此時(shí)我們可以考慮選擇淺藍(lán)色欄的配置。不過,此時(shí)的OCx輸出跟極性選擇位一致,如果極性選擇位為0,則輸出低電平;如果極性選擇位為1,則輸出高電平。也就是說,這種情況下,所選擇通道停止輸出時(shí)的電平跟極性選擇位有關(guān)。

如果覺得自己的應(yīng)用有這方面的需求,事先規(guī)劃PWM功能時(shí)就要考慮極性選擇位安排問題。當(dāng)然,由于極性選擇位影響到最終OCx輸出端,可能會(huì)遇到極性選擇位和PWM輸出波形在應(yīng)用上兼顧不過來(lái)的情形,這時(shí)可以考慮對(duì)所選擇通道的PWM復(fù)用功能取消,直接操作GPIO來(lái)控制OCx腳的輸出電平。

?若希望暫停一對(duì)互補(bǔ)通道的PWM輸出呢?這里有幾種情況:

1、暫停PWM輸出后,希望OCx/OCxN端輸出低電平,這點(diǎn)好辦。參照上圖中紅色欄配置即可。即令CCXE=CCXNE=0。

2、?暫停PWM輸出后,希望OCX/OCXN端輸出一高一低呢?

如果該互補(bǔ)通道的極性選擇位一樣,參照上面單個(gè)非互補(bǔ)通道的作法,修改CCR寄存器的值比ARR大或者等于0,一定可以實(shí)現(xiàn)輸出一高一低的電平。

如果如果該互補(bǔ)通道的極性選擇位不一樣,參照上面單個(gè)非互補(bǔ)通道的作法,修改CCR寄存器的值比ARR大或者等于0,這時(shí)OCX/OCXN端的電平一定一致的,要么同高要么同低。這時(shí)可以嘗試回頭重新規(guī)劃下互補(bǔ)通道的輸出與極性選擇,看看能否做調(diào)整而不影響應(yīng)用功能。不行的話,考慮將其中某個(gè)通道的PWM輸出復(fù)用功能取消,直接操作GPIO。

3、暫停PWM輸出后,希望OCX/OCXN端輸出同為高呢?這在上面第2點(diǎn)已經(jīng)提到了。如果互補(bǔ)通道的輸出極性選擇位不一樣,通過調(diào)整CCR寄存器的值一定可以實(shí)現(xiàn)雙通道同時(shí)輸出高電平。如果說互補(bǔ)通道的輸出極性選擇位是一致的,同樣可以嘗試重新規(guī)劃互補(bǔ)通道的輸出與極性選擇位的安排。不行的話,考慮取消其中某個(gè)通道的GPIO復(fù)用功能,直接操作寄存器來(lái)控制該輸出端的電平。

好,關(guān)于停止STM32定時(shí)器PWM輸出后電平的確定話題,就聊這么多。供君參考。最后提醒一點(diǎn),關(guān)于修改CCR值后的生效時(shí)間點(diǎn)跟是否開啟了其預(yù)裝載功能有關(guān)。

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

    關(guān)注

    116

    文章

    5889

    瀏覽量

    226469
  • STM32
    +關(guān)注

    關(guān)注

    2312

    文章

    11189

    瀏覽量

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

    關(guān)注

    23

    文章

    3370

    瀏覽量

    124425

原文標(biāo)題:STM32定時(shí)器停止PWM輸出時(shí)的電平話題

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

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    CW32定時(shí)器及其中斷介紹

    )或者產(chǎn)生輸出波形(輸出比較和 PWM)。 高級(jí)定時(shí)器:高級(jí)定時(shí)器 (ATIM) 由一個(gè) 16 位的自動(dòng)重載計(jì)數(shù)
    發(fā)表于 01-14 06:42

    LAT1173高精度定時(shí)器的同步功能應(yīng)用筆記

    STM32G474 所含的高精度定時(shí)器(HRTIMER)其實(shí)包含了多個(gè)定時(shí)器,多個(gè)定時(shí)器之間可以單獨(dú)工作,也可以進(jìn)行同步,且高精度定時(shí)器還能
    發(fā)表于 01-11 17:32 ?0次下載

    LAT1183+高精度定時(shí)器中 single-shot 計(jì)數(shù)模式不工作應(yīng)用筆記

    PWM 輸出,在調(diào)試模式下發(fā)現(xiàn)該子定時(shí)器的計(jì)數(shù)一直為 0,即計(jì)數(shù)一直沒有啟動(dòng),但如果將計(jì)數(shù)方式修改為continuous 模式,其他保
    發(fā)表于 01-11 17:28 ?0次下載

    STM32G474 HRTIME PWM 丟波問題分析與解決

    STM32G474 中包含了針對(duì)數(shù)字電源應(yīng)用的高精度定時(shí)器(HRTIMER),客戶在應(yīng)用該定時(shí)器產(chǎn)生 PWM 時(shí),發(fā)現(xiàn) PWM
    發(fā)表于 01-04 13:47 ?0次下載

    CW32通用定時(shí)器輸出比較

    稀里糊涂的,通道就是讓信號(hào)走的路,放到這里就是說,這個(gè)定時(shí)器擁有4個(gè)可以用來(lái)輸出|輸入的電信號(hào)道路。那這個(gè)通道輸出的是什么東西呢? 我們都知道,對(duì)電平進(jìn)行周期反轉(zhuǎn)就可以制造方波,而
    發(fā)表于 12-11 06:45

    CW32A030微控制定時(shí)器

    的脈沖寬度和周期、產(chǎn)生輸出波形(PWM、單脈沖、插入死區(qū)時(shí)間 的互補(bǔ)PWM 等)。 2 通用定時(shí)器(GTIM1..4) 內(nèi)部集成4 個(gè)通用定時(shí)器
    發(fā)表于 12-04 06:47

    CW32L010+定時(shí)器介紹

    :一組,專為低功耗應(yīng)用而設(shè)計(jì),能夠在保持低功耗的同時(shí)實(shí)現(xiàn)定時(shí)功能。 高級(jí)控制PWM定時(shí)器:一組,支持PWM輸出和高級(jí)控制功能,適用于需要精確
    發(fā)表于 12-01 07:53

    CW32定時(shí)器及中斷介紹

    )或者產(chǎn)生輸出波形(輸出比較和 PWM)。 高級(jí)定時(shí)器:高級(jí)定時(shí)器 (ATIM) 由一個(gè) 16 位的自動(dòng)重載計(jì)數(shù)
    發(fā)表于 12-01 07:08

    PWM、定時(shí)器、SysTick 區(qū)別及應(yīng)用場(chǎng)景

    在單片機(jī)和嵌入式開發(fā)中,經(jīng)常會(huì)遇到PWM(脈寬調(diào)制)、定時(shí)器、SysTick(系統(tǒng)滴答定時(shí)器)這幾個(gè)詞。很多初學(xué)者容易把它們混為一談,以為都是“定時(shí)相關(guān)的東西”。其實(shí),它們?cè)诒举|(zhì)和應(yīng)用
    的頭像 發(fā)表于 11-17 10:53 ?671次閱讀
    <b class='flag-5'>PWM</b>、<b class='flag-5'>定時(shí)器</b>、SysTick 區(qū)別及應(yīng)用場(chǎng)景

    硬件定時(shí)器如何配置固定頻率?

    需求是:以25.6kHz操作引腳電平,系統(tǒng)主頻為160MHZ,STM32F429 按照文檔里“HWTIMER 設(shè)備”開啟了硬件定時(shí)器,但只能配置時(shí)間,按時(shí)間換算我要的這個(gè)頻率為 39.0625us
    發(fā)表于 09-26 07:12

    SysTick系統(tǒng)滴答定時(shí)器簡(jiǎn)介

    SysTick—系統(tǒng)定時(shí)器是屬于CM33內(nèi)核中的一個(gè)外設(shè),內(nèi)嵌在NVIC中。系統(tǒng)定時(shí)器是一個(gè)24bit的向下遞減的計(jì)數(shù),計(jì)數(shù)每計(jì)數(shù)一次的時(shí)間為 1/SYSCLK,一般我們?cè)O(shè)置系統(tǒng)時(shí)
    的頭像 發(fā)表于 09-23 09:50 ?1783次閱讀
    SysTick系統(tǒng)滴答<b class='flag-5'>定時(shí)器</b>簡(jiǎn)介

    定時(shí)器同步之并行模式

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

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

    結(jié)合起來(lái)使用的話可以實(shí)現(xiàn)更加豐富的功能, 可以對(duì)輸入信號(hào)進(jìn)行計(jì)數(shù),可以測(cè)量輸入信號(hào)的脈沖寬度,可以輸出單個(gè)脈沖、PWM 等波形,等等。 通過定時(shí)器生成 PWM 波形信號(hào)來(lái)控制電機(jī)狀態(tài)是
    發(fā)表于 09-01 15:20

    基于 AS32X601 微控制定時(shí)器模塊(TIM)技術(shù)研究與應(yīng)用實(shí)踐

    闡述了高級(jí)定時(shí)器和通用定時(shí)器的計(jì)數(shù)精度、預(yù)分頻可編程性,以及輸入捕獲、輸出比較、PWM生成等
    的頭像 發(fā)表于 08-19 16:44 ?991次閱讀

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

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