在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

SysTick與HAL_Delay的關系與注意事項

CHANBAEK ? 來源:頭條號秋天滴風 ? 作者:頭條號秋天滴風 ? 2023-04-21 11:32 ? 次閱讀

SysTick與HAL_Delay的關系與注意事項

本文將介紹SysTick與HAL_Delay()函數之間的關系,以及使用HAL_Delay()函數的注意事項;

一.HAL_Delay()函數實現的原理、與SysTick的關系

下面我們先看一下HAL_Delay函數的源碼

__weak void HAL_Delay(uint32_t Delay)
{
  uint32_t tickstart = HAL_GetTick();
  uint32_t wait = Delay;

  /* Add a freq to guarantee minimum wait */
  if (wait < HAL_MAX_DELAY)
  {
    wait += (uint32_t)(uwTickFreq);
  }

  while((HAL_GetTick() - tickstart) < wait)
  {
  }
}

從源碼可以看出該函數將我們傳入的參數與HAL_GetTick()-tickstart比較,若不滿足條件則退出while、若滿足

接下來我們追一下HAL_GetTick()的源代碼:

__weak uint32_t HAL_GetTick(void)
{
return uwTick;
}

接著追一下uwTick ,發(fā)現在下面這個函數中對它的值進行了操作:

__weak void HAL_IncTick(void)
{
uwTick += uwTickFreq;
}

接著追一下uwTickFreq 發(fā)現uwTickFreq = 1,接著追一下HAL_IncTick(void)函數:

發(fā)現HAL_IncTick(void)函數是在SysTick的中斷回調函數內調用的;

綜上可知HAL_Delay與SysTick的關系:HAL_Delay函數的執(zhí)行、最終是依賴于SysTick的每觸發(fā)一次SysTick的中斷耗時1ms,HAL_GetTick()-tickstart會增大1、知道差值等于HAL_Delay的傳入參數。

二、由SysTick與HAL_Delay之間的關系可知,我們在使用HAL_Delay的時候需要注意:當在中斷中使用了HAL_Delay函數,則該中斷的搶占優(yōu)先級必須低于SysTick中斷的優(yōu)先級,否則會導致SysTick中斷不能搶占該中斷函數、最終導致HAL_GetTick()-tickstart的值不會變,從而陷入死循環(huán)中。

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

    關注

    5

    文章

    900

    瀏覽量

    41588
  • 源碼
    +關注

    關注

    8

    文章

    649

    瀏覽量

    29310
  • 函數
    +關注

    關注

    3

    文章

    4341

    瀏覽量

    62799
  • Systick
    +關注

    關注

    0

    文章

    62

    瀏覽量

    13124
  • HAL
    HAL
    +關注

    關注

    2

    文章

    71

    瀏覽量

    12647
收藏 人收藏

    評論

    相關推薦

    多層板埋孔設計注意事項

    多層板埋孔設計注意事項
    的頭像 發(fā)表于 12-20 16:06 ?212次閱讀

    PCBA生產注意事項

    ? ?PCBA生產注意事項。 長按識別二維碼關注[現代電子裝聯工藝技術]訂閱號,開啟我們共同的學習之旅 end
    的頭像 發(fā)表于 11-15 17:04 ?449次閱讀
    PCBA生產<b class='flag-5'>注意事項</b>

    如何為住宅配置靜態(tài)IP:步驟與注意事項

    為住宅配置靜態(tài)IP地址,通常涉及以下步驟和注意事項。
    的頭像 發(fā)表于 10-24 08:02 ?282次閱讀

    脈沖式充電器的使用注意事項

    脈沖式充電器的使用注意事項主要包括以下幾個方面: 一、安全注意事項 用電安全 :在充電過程中,應始終保持警惕,注意用電安全,避免觸電和短路等危險情況的發(fā)生。 防火防災 :避免在易燃易爆物品附近進行
    的頭像 發(fā)表于 09-26 16:05 ?961次閱讀

    繞線電感定制的注意事項

    電子發(fā)燒友網站提供《繞線電感定制的注意事項.docx》資料免費下載
    發(fā)表于 09-20 11:24 ?0次下載

    共模電感定制的注意事項

    電子發(fā)燒友網站提供《共模電感定制的注意事項.docx》資料免費下載
    發(fā)表于 09-04 11:47 ?0次下載

    LiFePO4設計注意事項

    電子發(fā)燒友網站提供《LiFePO4設計注意事項.pdf》資料免費下載
    發(fā)表于 09-03 09:24 ?0次下載
    LiFePO4設計<b class='flag-5'>注意事項</b>

    cubeide中使用Hal_Delay()時,每次調試總會跳轉到異常狀態(tài),如何解決?

    cubeide 中使用Hal_Delay()時,每次調試總會跳轉到異常狀態(tài)。 Break at address \"0xaf5cf47e\" with no debug
    發(fā)表于 07-23 07:52

    現場總線的使用方法與注意事項

    的穩(wěn)定可靠運行,正確的使用方法和注意事項至關重要。本文將詳細介紹現場總線的使用方法和注意事項,以供讀者參考。
    的頭像 發(fā)表于 06-06 11:49 ?841次閱讀

    stm32cubemx的HAL_Delay()函數,當HAL_GetTick()的計數正好要溢出時,是不是延時就不準了?

    ; } __weak void HAL_Delay(__IO uint32_t Delay) { uint32_t tickstart = 0; tickstart = HAL
    發(fā)表于 05-09 06:20

    FMD LINK 使用注意事項

    電子發(fā)燒友網站提供《FMD LINK 使用注意事項.pdf》資料免費下載
    發(fā)表于 05-06 10:11 ?0次下載

    STM32F7 IAP跳轉后HAL_Delay沒有執(zhí)行的原因?

    on variable incremented in SysTick ISR. This implies that if HAL_Delay() is called from a peripheral
    發(fā)表于 04-09 06:53

    STM32F767ZGT6改IAP后HAL_Delay卡死,定時器不進中斷,直到freeRTOS初始化才開始中斷,為什么?

    以后程序卡在HAL_Delay里,在定時器中斷中加串口打印發(fā)現應該是定時器一直沒有開啟導致計數,應該MX_FREERTOS_Init()以及osKernelStart執(zhí)行完以后才開啟的定時器, 我把
    發(fā)表于 03-21 06:13

    EMI / Safety觀念簡介及注意事項

    電子發(fā)燒友網站提供《EMI / Safety觀念簡介及注意事項.ppt》資料免費下載
    發(fā)表于 02-28 09:45 ?1次下載

    浪涌抑制器的應用及注意事項?

    浪涌抑制器的應用及注意事項?|深圳比創(chuàng)達電子
    的頭像 發(fā)表于 01-19 09:55 ?779次閱讀
    浪涌抑制器的應用及<b class='flag-5'>注意事項</b>?
    主站蜘蛛池模板: 日韩免费毛片视频| 日韩精品三级| 女主播扒开内衣让粉丝看个够| 亚洲视频在线网| 美女扒开尿囗给男人玩的动图| 国产aaaaa一级毛片| 亚洲综合久久综合激情久久| 一级毛片真人免费观看| 婷婷欧美| 你懂的福利| 高清激情小视频在线观看| 夜夜操天天操| 毛片福利| tube69日本老师| 国产精品丝袜| 四虎国产精品免费久久影院| 欧美一卡二三卡四卡不卡| 国产精品美女自在线观看免费| 五月天婷婷基地| 97精品久久天干天天蜜| 亚洲欧美综合一区二区三区四区| 伊人久久亚洲综合| 日本黄大乳片免费观看| 国产精品欧美一区二区三区不卡| 午夜视频福利在线| 高清成年美女黄网站色大| 婷婷色站| 色老板在线视频一区二区| 久久久久国产精品免费免费不卡| 爱啪网站| 久久久夜夜夜| 一区二区三区网站在线免费线观看| 曰本福利写真片视频在线| 91av视频在线| 伊人久久大香线蕉综合bd高清| 三级理论手机在线观看视频| 国产综合色精品一区二区三区| 天天色综合3| 国产成人啪精品午夜在线观看| 一区二区三区四区在线视频| 欧美色欧美亚洲高清在线视频 |