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

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

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

3天內不再提示

STM32如何使用定時器實現(xiàn)微秒(us)級延時?

工程師鄧生 ? 來源:未知 ? 作者:劉芹 ? 2023-11-06 11:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

STM32如何使用定時器實現(xiàn)微秒(us)級延時?

在STM32微控制器中,可以使用定時器實現(xiàn)微秒級延時。具體來說,可以使用定時器的計數(shù)器和自動重裝載寄存器來生成精確的延時。

以下將詳細介紹如何使用定時器實現(xiàn)微秒級延時的步驟:

步驟 1:配置定時器

首先,需要選擇一個適合的定時器。大多數(shù)STM32微控制器都配備了多個定時器,因此,可以根據(jù)需求選擇一個可用的定時器。一般來說,TIM2和TIM3定時器是常用的,具備較高的精度和可編程性。

接下來,需要進行定時器的基本配置,包括時鐘源、計數(shù)模式、分頻系數(shù)等。可以根據(jù)具體需求,選擇合適的配置參數(shù)。通常情況下,可以選擇內部時鐘源作為定時器的時鐘源,并將分頻系數(shù)設置為最小,以獲得最高的精度。

步驟 2:設置計數(shù)周期

接下來,需要設置定時器的計數(shù)周期,以確定延時的時長。根據(jù)定時器的位數(shù)(例如,16位或32位),可以設置計數(shù)器的最大值。通過修改自動重裝載寄存器(ARR),可以設置計數(shù)器的最大值。

計算最大延時(us)的公式為:

最大延時(us)= (計數(shù)器最大值+1) * 定時器分頻系數(shù) / 定時器頻率

通過調整最大值,即可獲得所需的微秒級延時。

步驟 3:編寫延時函數(shù)

最后,根據(jù)上述配置,編寫一個延時函數(shù)來實現(xiàn)微秒級延時。這個函數(shù)的實現(xiàn)基于定時器的中斷機制。

首先,需要使能定時器的中斷,并配置定時器中斷的優(yōu)先級。可以使用HAL庫提供的相關函數(shù)來完成這些配置。

然后,編寫中斷服務函數(shù)(ISR),并在其中對延時時間進行判斷。當計數(shù)器計數(shù)達到預設值時,就說明已經(jīng)延時完成,可以清除中斷標志位,并執(zhí)行相應的處理。

需要注意的是,在定時器中斷函數(shù)中,可以使用全局變量來統(tǒng)計中斷次數(shù),以便于在延時函數(shù)中進行計時。

最后,在延時函數(shù)中,可以使用循環(huán)或者其他方式,來判斷延時是否達到預設的時間。比較常用的方法是使用一個while循環(huán),判斷計數(shù)次數(shù)是否滿足條件。當滿足條件時,延時完成。

綜上所述,通過以上步驟,可以在STM32微控制器中使用定時器實現(xiàn)微秒級延時。在實際應用中,可以根據(jù)需求進行相應的配置和優(yōu)化。

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

    關注

    48

    文章

    8305

    瀏覽量

    163546
  • STM32
    +關注

    關注

    2307

    文章

    11150

    瀏覽量

    372402
  • 定時器
    +關注

    關注

    23

    文章

    3365

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

    定時器中斷什么時候自動清零TF溢出標志位?

    1.是在進入中斷的那一刻就自動清TF還是在中斷處理完后才清TF? 2.在處理中斷程序的過程中,計數(shù)還在做加1的定時計數(shù)工作嗎? 3.如果用工作方式1定時,最大只用65536微秒,要是
    發(fā)表于 01-06 06:06

    實現(xiàn)一個嵌入式的軟件定時器

    數(shù)量不受限制。 但由于軟件定時器是通過程序實現(xiàn)的,其運行和維護都需要耗費一定的CPU資源,同時精度也相對硬件定時器要差一些。 2.軟件定時器
    發(fā)表于 12-10 08:29

    CW32L031嘀嗒定時器怎樣定時1us

    CW32L031嘀嗒定時器 怎樣定時1us,以便DS18B20,DHT11使用。提供一下代碼
    發(fā)表于 12-10 07:40

    CST92F30的定時器怎么做到微秒級別

    請問大家CST92F30的定時器怎么做到微秒級別。當前SDK中沒有關于定時器的配置說明
    發(fā)表于 12-03 11:10

    使用系統(tǒng)定時器SysTick來實現(xiàn)精確延時微秒和毫秒函數(shù)

    到 0 時,將從RELOAD 寄存中自動重裝載定時初值,開始新一輪計數(shù)。使用內核的SysTick定時器實現(xiàn)延時,可以不占用系統(tǒng)
    發(fā)表于 11-20 07:12

    PWM、定時器、SysTick 區(qū)別及應用場景

    。下面我們來梳理清楚。一、基本概念定時器(Timer)MCU內最基礎的計數(shù)外設,通過計數(shù)時鐘周期實現(xiàn)定時、計數(shù)功能。多數(shù)MCU內部有多個通用定時器,可配置為
    的頭像 發(fā)表于 11-17 10:53 ?418次閱讀
    PWM、<b class='flag-5'>定時器</b>、SysTick 區(qū)別及應用場景

    如何利用蜂鳥HbirdV2-SoC自帶外設PWM進行毫秒延時和計時

    ); SOC_CORE_FREQ = get_cpu_freq(); } 完成TIM0配置后,就可以設置一個微秒延時函數(shù)了,本例中模仿e203自帶的delay_1ms()函數(shù),實現(xiàn)
    發(fā)表于 10-30 07:47

    硬件定時器如何配置固定頻率?

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

    SysTick系統(tǒng)滴答定時器簡介

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

    大彩講堂:VisualHMI-LUA教程-定時器的使用指南

    定時器的使用
    的頭像 發(fā)表于 08-31 16:59 ?971次閱讀
    大彩講堂:VisualHMI-LUA教程-<b class='flag-5'>定時器</b>的使用指南

    stm32H743定時器溢出的原因?怎么解決?

    我利用定時器更新中斷實現(xiàn)軟件計時,定時時間是固定的按照{10ms, 20ms,650ms, 50ms,50ms}周期性進行的。由于下一次的計時時間是需要在定時器的中斷處理函數(shù)中更新的,
    發(fā)表于 06-23 08:26

    MCU定時器/計數(shù)

    RISC-V核低功耗MCU通過靈活的定時器架構、低功耗模式適配及硬件中斷優(yōu)化,在工業(yè)控制、智能家居等場景中實現(xiàn)高精度計時與能耗控制的協(xié)同設計,滿足復雜任務調度與實時響應的雙重需求?。 一、?硬件
    的頭像 發(fā)表于 04-27 13:54 ?682次閱讀

    【S32K 進階之旅】如何使用 S32K3 PIT 定時器實現(xiàn)精準延時?

    周期中斷定時器(PeriodicInterruptTimer,PIT)模塊顧名思義,就是通過計時行為引發(fā)周期性中斷事件的觸發(fā)。本文基于S32K312開發(fā)板實現(xiàn)延時功能,在此之前先簡單
    的頭像 發(fā)表于 03-10 16:33 ?1192次閱讀
    【S32K 進階之旅】如何使用 S32K3 PIT <b class='flag-5'>定時器</b><b class='flag-5'>實現(xiàn)</b>精準<b class='flag-5'>延時</b>?

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

    請問,stm32的同一個定時器,不同的通道,可以不同時的輸出pwm波形嗎?比如tim1的ch1輸出,延時幾毫秒后tim1的ch2輸出。 現(xiàn)在是要輸出兩個相位不同的pwm波形,延時時間、
    發(fā)表于 03-07 08:20