国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

STM32之HAL庫微妙延遲(借助Systick)

這篇具有很好參考價值的文章主要介紹了STM32之HAL庫微妙延遲(借助Systick)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

代碼

void bsp_us_delay(uint32_t us) {
    uint32_t start, now, delta, reload, us_tick;
    start = SysTick->VAL;
    reload = SysTick->LOAD;
    us_tick = SystemCoreClock / 1000000UL;
    do {
        now = SysTick->VAL;
        delta = start > now ? start - now : reload + start - now;
    } while (delta < us_tick * us);
}

測試(主要邏輯)

 stm32_pin_mode(GPIOB,GPIO_PIN_6,pin_mode_output);

    while (1){
        pin_high(GPIOB,GPIO_PIN_6);
        bsp_us_delay(20);
        pin_low(GPIOB,GPIO_PIN_6);
        bsp_us_delay(20);

    }

邏輯分析儀查看結(jié)果

大概1us左右的誤差

STM32之HAL庫微妙延遲(借助Systick)文章來源地址http://www.zghlxwxcb.cn/news/detail-502354.html

到了這里,關(guān)于STM32之HAL庫微妙延遲(借助Systick)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • 關(guān)于STM32使用HAL_Delay(),程序卡死,的解決辦法。

    關(guān)于STM32使用HAL_Delay(),程序卡死,的解決辦法。

    在使用STM32的Hal庫開發(fā)時,存在在中斷中使用Hal_Delay()時程序會卡死的問題,這是由于Hal_Delay()是使用定時器實現(xiàn)的,并且它的定時器中斷優(yōu)先級為15是最低的。需要給它重新設置中斷優(yōu)先級,實際操作方式如下: 這會把Hal_Delay()的優(yōu)先級提到最高,同時要查看另一個中斷優(yōu)先

    2024年02月16日
    瀏覽(26)
  • HAL STM32基于系統(tǒng)滴答定時器(SysTick)實現(xiàn)多任務時間片輪詢

    HAL STM32基于系統(tǒng)滴答定時器(SysTick)實現(xiàn)多任務時間片輪詢

    ??RTOS(實時操作系統(tǒng))和定時器時間片輪詢是兩種不同的任務調(diào)度和執(zhí)行方式的差異簡介 ?? 以下部分內(nèi)容,由AI給出的解答: ??RTOS(實時操作系統(tǒng)): ??RTOS是一種專門設計用于實時系統(tǒng)的操作系統(tǒng),它可以有效地管理多個任務,提供任務調(diào)度、同步和通信等功能。 ??

    2024年02月21日
    瀏覽(20)
  • 【HAL庫】STM32CubeMX開發(fā)----非阻塞延時實驗----SysTick(滴答定時器)中斷

    【HAL庫】STM32CubeMX開發(fā)----非阻塞延時實驗----SysTick(滴答定時器)中斷

    STM32CubeMX 下載和安裝 詳細教程 【HAL庫】STM32CubeMX開發(fā)----STM32F103/F207/F407----目錄 HAL庫 有自帶的 ms級 延時函數(shù): HAL_Delay(); 缺點: 這是 阻塞延時 方式,就是延時期間,什么都不能干,這樣很浪費資源。 這篇文章主要介紹,利用 SysTick(滴答定時器)中斷 實現(xiàn) 非阻塞延時 的實驗

    2024年02月16日
    瀏覽(100)
  • STM32 使用HAL庫,HAL_Delay()會卡死, 程序一直卡在 HAL_GetTick( ) 函數(shù)中(已解決)

    今天遇到個很奇怪的問題, 不知道為什么, 單片機運行一會之后, 系統(tǒng)就沒反應了, 經(jīng)過調(diào)試發(fā)現(xiàn), 系統(tǒng)卡在HAL_Delay()中了. 之前也遇到過這個問題后來把HAL_Delay 去掉了. 然后發(fā)現(xiàn)不行, 還是得有它.不然發(fā)串口數(shù)據(jù)發(fā)的太快會亂掉. 得慢點發(fā). 然后調(diào)試到HAL_Delay()方法的內(nèi)部發(fā)現(xiàn)

    2024年02月03日
    瀏覽(22)
  • STM32G0x0系列-軟件定時器解決HAL_Delay問題

    STM32G0x0系列-軟件定時器解決HAL_Delay問題

    目錄 HAL_Delay函數(shù)源碼 軟件定時器 創(chuàng)建工程試驗 1.將對應文件移動到項目位置 2.添加現(xiàn)有文件放到工程中? ?3.重定向printf 3.驗證自己的軟件定時器 4.查看現(xiàn)象 ???????? HAL_Delay函數(shù)使用了中斷機制來實現(xiàn)延時功能,當在中斷函數(shù)中調(diào)用HAL_Delay函數(shù)需要考慮中斷優(yōu)先級問題。

    2024年02月07日
    瀏覽(87)
  • 【13】STM32·HAL庫-正點原子SYSTEM文件夾 | SysTick工作原理、寄存器介紹 | printf函數(shù)使用、重定向

    【13】STM32·HAL庫-正點原子SYSTEM文件夾 | SysTick工作原理、寄存器介紹 | printf函數(shù)使用、重定向

    ??下面函數(shù)都是以sys_開頭,定義在sys.c中。正點原子函數(shù)現(xiàn)階段命名規(guī)則如果是在led.c中,則以led_開頭。在F7/H7系列中會存在Cache配置函數(shù),I-Cache中存儲指令,D-Cache中存儲數(shù)據(jù)。 ??SysTick,即系統(tǒng)滴答定時器,包含在M3/4/7內(nèi)核里面,核心是一個24位的遞減計數(shù)器( 最大計

    2024年02月15日
    瀏覽(62)
  • 嵌入式開發(fā)的學習與未來展望:借助STM32 HAL庫開創(chuàng)創(chuàng)新之路

    嵌入式開發(fā)的學習與未來展望:借助STM32 HAL庫開創(chuàng)創(chuàng)新之路

    ? 引言: 嵌入式開發(fā)作為計算機科學領(lǐng)域的重要分支,為我們的日常生活和產(chǎn)業(yè)發(fā)展提供了無限的可能。STMicroelectronics的STM32系列芯片以其出色的性能和廣泛的應用領(lǐng)域而備受關(guān)注。而STM32 HAL庫作為嵌入式開發(fā)的高級庫,為學習者提供了更高效、更簡單的開發(fā)方式。本文將結(jié)

    2024年02月12日
    瀏覽(30)
  • STM32 SYSTick高精度延時功能代碼實現(xiàn)

    STM32 SYSTick高精度延時功能代碼實現(xiàn)

    本篇文章將給大家講解一下SYSTICK滴答定時器,以及講解使用滴答定時器來實現(xiàn)高精度延時功能的代碼。 SysTick定時器是嵌入式系統(tǒng)中常見的一個系統(tǒng)定時器,在ARM Cortex-M微控制器中廣泛使用。下面是關(guān)于SysTick定時器的一些介紹: 用途: SysTick定時器通常被用作操作系統(tǒng)的時鐘

    2024年02月22日
    瀏覽(93)
  • 32位 STM32 打印 uint64_t 類型

    32位 STM32 打印 uint64_t 類型

    測試代碼,未整理,可參考!

    2024年02月11日
    瀏覽(16)
  • STM32——STM32F103時鐘解析(正點原子資料+HAL庫代碼分析)

    STM32——STM32F103時鐘解析(正點原子資料+HAL庫代碼分析)

    上次寫系統(tǒng)時鐘解析的時候說出一篇103的時鐘解析,我就整理HAL庫開發(fā)的正點的資料,給小白梳理,我也是小白,不做權(quán)威使用。 在 STM32 中,有五個時鐘源,為 HSI、HSE、LSI、LSE、PLL。從時鐘頻率來分可以分為高速時鐘源和低速時鐘源,在這 5 個中 HIS,HSE 以及 PLL 是高速時鐘

    2024年02月19日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包