日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

PWM輸出第一個(gè)脈沖寬帶異常的話題

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

掃碼添加小助手

加入工程師交流群

我們?cè)谑褂?a target="_blank">STM32定時(shí)器做PWM輸出過程中,當(dāng)借助示波器或邏輯分析儀查看波形時(shí),有時(shí)會(huì)發(fā)現(xiàn)輸出的第一個(gè)PWM脈沖跟后續(xù)的輸出脈沖不一樣。比方像下面的輸出波形,第一個(gè)脈沖的高電平要寬于所有其它后續(xù)脈沖。

對(duì)于這種情況,有些應(yīng)用是不太在乎的,但有些應(yīng)用場(chǎng)合可能就不能接受。那這個(gè)問題是怎么產(chǎn)生的?有沒有辦法解決?

產(chǎn)生這個(gè)現(xiàn)象的原因簡(jiǎn)單點(diǎn)說(shuō)就是在于定時(shí)器比較輸出模塊的工作與定時(shí)器計(jì)數(shù)單元的工作具有相對(duì)獨(dú)立性。使能比較通道的輸出功能的操作與使能計(jì)數(shù)器的操作有個(gè)時(shí)間差,其長(zhǎng)短往往跟用戶處理代碼有關(guān)。

我們知道,STM32的高級(jí)定時(shí)器或通用定時(shí)器,可以大致看成由四個(gè)模塊組成,分別是主從控制模塊、時(shí)基單元、輸入捕捉模塊、輸出比較模塊。下面截圖是STM32F4系列高級(jí)定時(shí)器TIM1的功能框圖的一部分,這里沒有將定時(shí)器的主從模塊截取進(jìn)來(lái),只保留了時(shí)基單元、輸入捕捉單元、輸出比較單元。

這三個(gè)單元既可以相互配合協(xié)調(diào)工作,也可以各自獨(dú)立工作。比方說(shuō),輸出比較單元的工作并不要求時(shí)基單元的計(jì)數(shù)器工作,換言之,即使計(jì)數(shù)器不被開啟計(jì)數(shù),輸出比較單元依然可以根據(jù)默認(rèn)配置或用戶的有關(guān)輸出配置而發(fā)揮作用。

我們不妨結(jié)合一個(gè)具體實(shí)例來(lái)看下。假設(shè)定時(shí)器TIM1的計(jì)數(shù)模式選擇向上計(jì)數(shù)模式,讓通道CH1按照PWM1模式的規(guī)則實(shí)現(xiàn)PWM輸出。配置好ARR和CCR1,極性選擇高有效,即OC輸出與OCRef參考信號(hào)保持同相。

對(duì)于定時(shí)器的初始化,我們一般會(huì)先對(duì)時(shí)基單元的相關(guān)參數(shù)做配置,比如時(shí)鐘源、ARR,PSC等,然后對(duì)比較輸出功能做配置和使能。當(dāng)完成比較輸出的配置及使能后,即使此時(shí)沒有使能時(shí)基單元的計(jì)數(shù)器,比較輸出單元就發(fā)揮作用了,即它會(huì)結(jié)合比較輸出配置和CNT與CCR的比較結(jié)果在OC端輸出相應(yīng)電平。

根據(jù)上述配置,若CCR大于計(jì)數(shù)器CNT的值時(shí)OC端輸出高電平,否則輸出低電平。若用戶沒有專門對(duì)CNT寄存器進(jìn)行賦值,芯片復(fù)位后,它的默認(rèn)值就是0,顯然CCR的值要大于此時(shí)的CNT的值,自然此時(shí)OC端就輸出高電平。如果此時(shí)計(jì)數(shù)器還未被開啟,這個(gè)高電平就會(huì)保持到計(jì)數(shù)器被啟動(dòng),并延申到后續(xù)的PWM輸出動(dòng)作中。即這個(gè)高電平會(huì)跟第一個(gè)PWM脈沖的輸出連在一起。若剛好碰到第一個(gè)PWM脈沖首先是輸出高電平,這就導(dǎo)致第一個(gè)脈沖的高電平寬度要寬于后面其它所有PWM脈沖的。

下圖第1處乃通道OC功能配置完成被使能的時(shí)間點(diǎn),第2處乃計(jì)數(shù)器被啟動(dòng)時(shí)間點(diǎn)。

在跟上述相同模式和極性條件下,有沒有辦法消除第一個(gè)脈沖的多余寬度呢?

辦法是有的。既然OC通道被使能后,其輸出由CCR與CNT的比較結(jié)果和PWM模式?jīng)Q定,這時(shí)我們可以考慮在使能OC通道之前手動(dòng)將CNT的值進(jìn)行修改,讓它等于ARR或0xffff【若是32位計(jì)數(shù)器就是0xffffffff】,此時(shí)CNT的值不可能會(huì)小于用戶配置的CCR值,就這樣通過改變CCR與CNT的比較結(jié)果達(dá)到改變OC端輸出電平之目的。

比方,如果你用STM32標(biāo)準(zhǔn)庫(kù)寫的話,你可以在下面紅圈的那個(gè)地方加一句:【arr對(duì)應(yīng)著時(shí)基單元中ARR寄存器的值】

參照上面相同定時(shí)器配置【向上計(jì)數(shù)模式、PWM1模式、極性選擇高有效】,下面基于Cube庫(kù)使用STM32F4的TIM1的通道2進(jìn)一步做個(gè)驗(yàn)證測(cè)試。

使用CubeMx配置完成生成初始化代碼,需添加的用戶代碼比較簡(jiǎn)單。如下圖所示。其中方框里的延時(shí)函數(shù)代碼是用來(lái)模擬比較輸出使能與使能計(jì)數(shù)器兩個(gè)操作間的間隔,以便觀察效果。

基于上述代碼,我們通過示波器可以看到第一個(gè)脈沖明顯寬于其它后續(xù)PWM脈沖。【如下圖所示】

在上面代碼的基礎(chǔ)上,我們?cè)谑鼓蹸H2比較輸出功能的代碼前添加一句修改CNT寄存器的語(yǔ)句,令其值等于ARR或等于計(jì)數(shù)器的滿量程值。下圖中橢圓圈內(nèi)的代碼?!救舭袰NT值改成等于ARR的值,效果也一樣】

然后再進(jìn)行測(cè)試,第一個(gè)脈沖也就不再異常了。【如下圖所示】

最后小結(jié)下,這個(gè)現(xiàn)象只有在使能定時(shí)器通道的比較輸出操作與使能計(jì)數(shù)器操作存在較為明顯的時(shí)差時(shí)才可能發(fā)現(xiàn),而且它還跟所選擇的PWM模式有關(guān),上面只是針對(duì)向上計(jì)數(shù)模式、PWM1模式做了分析和分享,當(dāng)涉及其它應(yīng)用模式時(shí)可具體問題具體分析,只要弄清原因了也就不難靈活應(yīng)對(duì)。

聲明:本文內(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

    文章

    5895

    瀏覽量

    226771
  • STM32
    +關(guān)注

    關(guān)注

    2313

    文章

    11196

    瀏覽量

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

    關(guān)注

    23

    文章

    3375

    瀏覽量

    124731

原文標(biāo)題:PWM輸出第一個(gè)脈沖寬帶異常的話題

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

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    關(guān)于冷卻的話題:手動(dòng)控制 5V PWM 風(fēng)扇,通過腳本控制,并通過內(nèi)核自動(dòng)控制

    談?wù)?b class='flag-5'>第一組,并與您起探討溫度調(diào)節(jié) PWM 控制的可能性。 那些關(guān)心冷卻的人可能還會(huì)發(fā)現(xiàn)以下話題很有趣:VisionFive 2 的熱安全性如何? 不要提高期望太高,使用我喜歡的
    發(fā)表于 03-18 07:13

    圖文學(xué)習(xí)PWM,怎么輸出直流信號(hào)?

    PWM脈沖寬度調(diào)制的意思,是個(gè)周期內(nèi)的高電平時(shí)間與周期時(shí)間之比,圖3-9 所示,它與傅里葉變換有不解之緣。
    的頭像 發(fā)表于 03-12 18:48 ?1780次閱讀
    圖文學(xué)習(xí)<b class='flag-5'>PWM</b>,怎么<b class='flag-5'>輸出</b>直流信號(hào)?

    脈沖寬度調(diào)制技術(shù)詳解,如何學(xué)習(xí)

    脈沖寬度調(diào)制(Pulse Width Modulation,簡(jiǎn)稱PWM)是種通過改變脈沖信號(hào)的寬度來(lái)控制模擬電路的技術(shù)。這種技術(shù)利用數(shù)字信號(hào)來(lái)控制模擬電路,通過調(diào)節(jié)
    的頭像 發(fā)表于 02-02 12:07 ?583次閱讀
    <b class='flag-5'>脈沖</b>寬度調(diào)制技術(shù)詳解,如何學(xué)習(xí)

    IEEE 802.11af 與空白頻譜無(wú)線技術(shù)的話題

    IEEE 802.11af 與空白頻譜無(wú)線技術(shù)的話題
    的頭像 發(fā)表于 12-14 15:12 ?1994次閱讀

    如何通過PWM脈沖控制電機(jī)?

    領(lǐng)域。 PWM脈沖脈沖寬度調(diào)制技術(shù),通過調(diào)節(jié)脈沖的高低電平時(shí)間比例來(lái)控制電路的平均電平值,來(lái)對(duì)
    發(fā)表于 11-28 06:58

    案例分享| PPLN驅(qū)動(dòng)的寬帶量子合成器:實(shí)現(xiàn)超快壓縮光脈沖源的關(guān)鍵突破

    (BroadbandQuantumSynthesizer,BQS)便是其中之,旨在推進(jìn)超快量子光學(xué)的前沿,其目的是開發(fā)世界上第一個(gè)寬帶壓縮光脈沖封裝源,這是對(duì)下
    的頭像 發(fā)表于 11-27 17:11 ?1431次閱讀
    案例分享| PPLN驅(qū)動(dòng)的<b class='flag-5'>寬帶</b>量子合成器:實(shí)現(xiàn)超快壓縮光<b class='flag-5'>脈沖</b>源的關(guān)鍵突破

    Linux 下交叉編譯實(shí)戰(zhàn):跑起來(lái)你的第一個(gè) STM32 程序

    跑起來(lái)你的第一個(gè)STM32程序。、準(zhǔn)備工作在開始之前,需要準(zhǔn)備:1、Linux開發(fā)環(huán)境Ubuntu、Debian或其他主流發(fā)行版都可以。2、ARMGCC交叉編譯工具
    的頭像 發(fā)表于 11-24 19:04 ?1110次閱讀
    Linux 下交叉編譯實(shí)戰(zhàn):跑起來(lái)你的<b class='flag-5'>第一個(gè)</b> STM32 程序

    文帶你讀懂“脈沖輸入輸出模塊”

    在自動(dòng)化生產(chǎn)的世界里,傳感器、執(zhí)行器、控制器每天都在“對(duì)話”。可問題是,它們說(shuō)的語(yǔ)言千奇百怪——有的輸出電壓信號(hào),有的傳輸電流信號(hào),還有的發(fā)出連串高速脈沖。如果沒有“翻譯官”,系統(tǒng)就亂了套。 而
    的頭像 發(fā)表于 11-24 17:10 ?1257次閱讀
    <b class='flag-5'>一</b>文帶你讀懂“<b class='flag-5'>脈沖</b>輸入<b class='flag-5'>輸出</b>模塊”

    **CW32L012****開發(fā)評(píng)估板的第一個(gè)程序**

    CW32L012****開發(fā)評(píng)估板的第一個(gè)程序 最近以15.99在CW32生態(tài)社區(qū)入手了這塊CW32L012開發(fā)評(píng)估板,我迫不及待的燒錄進(jìn)電燈程序,看看這塊板子是否是正常的,能否滿足我后面的學(xué)習(xí)
    發(fā)表于 11-22 00:09

    舵機(jī)PWM信號(hào)介紹!

    舵機(jī) PWM 信號(hào)介紹 PWM(Pulse Width Modulation,脈沖寬度調(diào)制)信號(hào)是舵機(jī)的核心控制方式,其通過脈沖的寬度變化來(lái)精確指令舵機(jī)
    的頭像 發(fā)表于 08-22 10:59 ?2652次閱讀

    種基于PWM的電壓輸出DAC電路設(shè)計(jì)

    對(duì)實(shí)際應(yīng)用中的脈寬調(diào)制(PWM)波形的頻譜進(jìn)行了理論分析,指出通過個(gè)低通濾波器可以把PWM 調(diào)制的敷模轉(zhuǎn)換信號(hào)解調(diào)出來(lái),實(shí)現(xiàn)從PWM到DA
    發(fā)表于 08-04 14:58

    PWM逆變器的不同調(diào)制方法對(duì)比

    PWM脈沖寬度調(diào)制(Pulse Width Modulation)的簡(jiǎn)稱。由于PWM逆變器的交流側(cè)只能輸出不同的電平而非連續(xù)的正弦波,因此需要采用
    的頭像 發(fā)表于 07-16 14:00 ?4482次閱讀
    <b class='flag-5'>PWM</b>逆變器的不同調(diào)制方法對(duì)比

    comp輸出用于tim1剎車,消隱源和pwm輸出是不是得是同一個(gè)TIM呀?

    那不是個(gè)定時(shí)器的話 怎么能保證COMP1的消隱觸發(fā)同步呢?假設(shè)pwm輸出是tim1_ch2,那么我消隱源可以選tim4_oc3?是不是ti
    發(fā)表于 06-05 06:10

    comp輸出用于tim1剎車,消隱源和pwm輸出是不是得是同一個(gè)TIM呢?

    那不是個(gè)定時(shí)器的話 怎么能保證COMP1的消隱觸發(fā)同步呢?假設(shè)pwm輸出是tim1_ch2,那么我消隱源可以選tim4_oc3?是不是ti
    發(fā)表于 05-14 08:14

    經(jīng)棧橋整流后光耦輸出異常,是什么原因?

    使用51單片機(jī)做一個(gè)簡(jiǎn)單的過零檢測(cè)電路,市電經(jīng)棧橋整流后進(jìn)入光耦,輸出端接上拉電阻 理論上應(yīng)該得到周期為10ms(市電周期20ms)的脈沖波,但實(shí)際得到的如附件所示,波形錯(cuò)誤 懷疑棧橋整流有誤,于是
    發(fā)表于 05-08 15:21
    乐亭县| 铜梁县| 昌都县| 高密市| 克山县| 台湾省| 新宁县| 武陟县| 玉环县| 太康县| 宾川县| 长子县| 博客| 正宁县| 平遥县| 武定县| 新巴尔虎左旗| 林周县| 龙泉市| 南安市| 弋阳县| 天镇县| 长治市| 武汉市| 蒙城县| 松潘县| 新郑市| 五大连池市| 集贤县| 通许县| 尖扎县| 巴林右旗| 涪陵区| 新乡县| 治县。| 汉寿县| 河东区| 团风县| 通许县| 灵山县| 山丹县|