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í)器應(yīng)用中的2個(gè)疑問

茶話MCU ? 來源:cc ? 2019-01-28 10:14 ? 次閱讀

疑問1:在使用STM32通用或高級(jí)定時(shí)器的比較輸出時(shí),如果采用中心對(duì)齊計(jì)數(shù)模式做PWM輸出,并使用比較事件作為ADC的觸發(fā)啟動(dòng)。那么,在一個(gè)完整的計(jì)數(shù)周期內(nèi),可能發(fā)生2次比較事件,想知道如何確定使用哪次比較事件進(jìn)行觸發(fā)呢?換句話說,是否可以對(duì)比較事件進(jìn)行選擇配置?答案是肯定的。

下圖是采樣中央對(duì)齊計(jì)數(shù)模式,PWM mode 1的PWM輸出情形。ARR=8,CCR=4.

在上面的應(yīng)用情況下,比較事件可能發(fā)生在CNT與CCR第一次匹配時(shí),即發(fā)生在向上計(jì)數(shù)階段,也可能發(fā)生在CNT與CCR第二次匹配時(shí),即發(fā)生在向下計(jì)數(shù)階段。到底發(fā)生在哪個(gè)階段,取決于相關(guān)控制寄存器的配置,這里跟寄存器TIMx_CR1中CMS控制位有關(guān)。

從該寄存器CMS控制位的描述不難看出,在計(jì)數(shù)器使用中心對(duì)齊計(jì)數(shù)模式做比較輸出時(shí),比較事件的發(fā)生是可以選擇的。可以僅僅發(fā)生在向上計(jì)數(shù)階段或向下計(jì)數(shù)階段,也可以配置為上下兩個(gè)計(jì)數(shù)階段都產(chǎn)生比較事件。這點(diǎn)可以結(jié)合上面圖形的箭頭提示加以認(rèn)知和理解?!綜cxIF為相應(yīng)通道的比較事件標(biāo)志位】

疑問2:有人反饋,在定時(shí)器的溢出中斷里打斷點(diǎn)時(shí),發(fā)現(xiàn)更新中斷標(biāo)志無法被清零,可用戶在中斷服務(wù)程序中實(shí)實(shí)在在的有對(duì)更新事件標(biāo)志實(shí)施清零操作。

其實(shí),并不是沒法對(duì)更新事件標(biāo)志清零,這只是種誤解。原因是盡管此時(shí)客戶在清零操作后的代碼處打上了斷點(diǎn),但由于定時(shí)器并沒有停止計(jì)數(shù),如果再加上溢出周期較短。程序剛做完清除操作并停止在定時(shí)器中斷服務(wù)程序斷點(diǎn)后,由于定時(shí)器還在持續(xù)計(jì)數(shù)而產(chǎn)生新的溢出更新事件,令更新事件標(biāo)志再次被置位,這樣給人以更新事件標(biāo)志沒法被清零的錯(cuò)覺。

對(duì)于調(diào)試狀態(tài)下定時(shí)器的計(jì)數(shù)動(dòng)作是可以軟件配置選擇的,即當(dāng)程序運(yùn)行到斷點(diǎn)后,定時(shí)器是繼續(xù)計(jì)數(shù)還是暫停下來可用戶軟件配置決定,【這里的定時(shí)器不僅僅指常規(guī)定時(shí)器,還包括看門狗】。

具體到上面案例,如果希望在斷點(diǎn)處計(jì)數(shù)器暫時(shí)不要計(jì)數(shù),我們可以軟件上做相應(yīng)配置。這里涉及到寄存器DBGMCU_CR,讓相關(guān)定時(shí)器在調(diào)試狀態(tài)遇到斷點(diǎn)時(shí)暫停計(jì)數(shù)。

聲明:本文內(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)投訴
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10900

    瀏覽量

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

    關(guān)注

    23

    文章

    3248

    瀏覽量

    114800

原文標(biāo)題:stm32定時(shí)器應(yīng)用中的2個(gè)疑問

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    STM32單片機(jī)定時(shí)器介紹

    其重要性。STM32F103 系列的單片機(jī)一共有 11 個(gè)定時(shí)器,其中 2 個(gè)高級(jí)定時(shí)器, 4
    發(fā)表于 11-11 17:17 ?22次下載

    STM32-基本定時(shí)器TIM6-TIM7基本定時(shí)功能

     STM32一共有11個(gè)定時(shí)器,其中2個(gè)高級(jí)控制定時(shí)器
    發(fā)表于 11-27 18:55 ?1.2w次閱讀
    <b class='flag-5'>STM32</b>-基本<b class='flag-5'>定時(shí)器</b>TIM6-TIM7基本<b class='flag-5'>定時(shí)</b>功能

    詳解STM32定時(shí)器的時(shí)鐘源

    STM32有多達(dá)8個(gè)定時(shí)器,其中TIM1和TIM8是能夠產(chǎn)生三對(duì)PWM互補(bǔ)輸出的高級(jí)定時(shí)器,常用于三相電機(jī)的驅(qū)動(dòng),它們的時(shí)鐘由APB
    的頭像 發(fā)表于 09-03 17:14 ?2.6w次閱讀

    基于STM32F103系列單片機(jī)的11個(gè)定時(shí)器解析

    STM32F103系列的單片機(jī)一共有11個(gè)定時(shí)器,其中: 2個(gè)高級(jí)定時(shí)器 4
    發(fā)表于 10-23 15:54 ?7205次閱讀
    基于<b class='flag-5'>STM32</b>F103系列單片機(jī)的11<b class='flag-5'>個(gè)</b><b class='flag-5'>定時(shí)器</b>解析

    [STM32]通用定時(shí)器的使用

    什么是PWM2.通過改變脈寬來改變亮滅程度總結(jié)前言首先還是要了解STM32庫函數(shù)中提供的使用定時(shí)器所需要配置的結(jié)構(gòu)體成員的含義typedef struct{ uint16_t TIM_Prescaler; /*
    發(fā)表于 11-22 19:06 ?24次下載
    [<b class='flag-5'>STM32</b>]通用<b class='flag-5'>定時(shí)器</b>的使用

    STM32定時(shí)器-基本定時(shí)器

    目錄定時(shí)器分類基本定時(shí)器功能框圖講解基本定時(shí)器功能時(shí)鐘源計(jì)數(shù)時(shí)鐘計(jì)數(shù)自動(dòng)重裝載寄存
    發(fā)表于 11-23 18:21 ?31次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>定時(shí)器</b>-基本<b class='flag-5'>定時(shí)器</b>

    STM32——高級(jí)定時(shí)器、通用定時(shí)器、基本定時(shí)器的區(qū)別

    STM32——高級(jí)定時(shí)器、通用定時(shí)器、基本定時(shí)器的區(qū)別
    發(fā)表于 11-26 15:21 ?110次下載
    <b class='flag-5'>STM32</b>——高級(jí)<b class='flag-5'>定時(shí)器</b>、通用<b class='flag-5'>定時(shí)器</b>、基本<b class='flag-5'>定時(shí)器</b>的區(qū)別

    STM32-通用定時(shí)器-定時(shí)器中斷

    1STM32定時(shí)器STM32F103ZET6一共有8個(gè)定時(shí)器,其中分別為:高級(jí)定時(shí)器(TIM1
    發(fā)表于 11-26 15:36 ?16次下載
    <b class='flag-5'>STM32</b>-通用<b class='flag-5'>定時(shí)器</b>-<b class='flag-5'>定時(shí)器</b>中斷

    STM32---定時(shí)器知多少

    14,15,16章節(jié),里面對(duì)定時(shí)器的知識(shí)有詳細(xì)的介紹。STM32F1系列的開發(fā)板一共有8個(gè)定時(shí)器,按照功能的不同可以分為:高級(jí)定時(shí)器(TIM
    發(fā)表于 11-30 14:36 ?19次下載
    <b class='flag-5'>STM32</b>---<b class='flag-5'>定時(shí)器</b>知多少

    STM32定時(shí)器學(xué)習(xí)---基本定時(shí)器

    STM32F1系列的產(chǎn)品,除了互聯(lián)網(wǎng)產(chǎn)品外,工作8個(gè),3種定時(shí)器,其中一種就是基本定時(shí)器。那么STM32單片機(jī)的基本
    發(fā)表于 12-02 14:06 ?28次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>定時(shí)器</b>學(xué)習(xí)---基本<b class='flag-5'>定時(shí)器</b>

    STM32定時(shí)器功能和用法詳解

    1. STM32的Timer簡(jiǎn)介 STM32一共有11個(gè)定時(shí)器,其中2
    發(fā)表于 02-11 15:04 ?29次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>定時(shí)器</b>功能和用法詳解

    STM32定時(shí)器的分類及中斷原理

    本文主要介紹常規(guī)定時(shí)器的TIM3,實(shí)現(xiàn)定時(shí)器中斷的功能。STM32定時(shí)器的分類在其中一篇文章
    的頭像 發(fā)表于 01-12 17:29 ?7315次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>定時(shí)器</b>的分類及中斷原理

    STM32的通用定時(shí)器

    STM32F1 的定時(shí)器非常多,由 2 個(gè)基本定時(shí)器(TIM6、TIM7)、4 個(gè)通用
    的頭像 發(fā)表于 02-10 14:47 ?3474次閱讀

    STM32 TIM—基本定時(shí)器

    STM32F4xx系列控制有共有14個(gè)TIM定時(shí)器。其中2個(gè)高級(jí)控制
    的頭像 發(fā)表于 07-22 17:05 ?5065次閱讀
    <b class='flag-5'>STM32</b> TIM—基本<b class='flag-5'>定時(shí)器</b>

    STM32速成筆記(6)—定時(shí)器

    關(guān)于什么是定時(shí)器,簡(jiǎn)單來講,就是是用來定時(shí)的。STM32F103ZET6有兩個(gè)基本定時(shí)器TIM6和TIM7,四
    的頭像 發(fā)表于 10-24 09:41 ?4490次閱讀
    <b class='flag-5'>STM32</b>速成筆記(6)—<b class='flag-5'>定時(shí)器</b>