99久久久久国产-99久久久久国产精品免费-99久久久久久久-99久久久免费精品免费-99久久免费费视频在线观看

131 1300 0010
其他
當前位置: 首頁>> 元件技術>>其他>>
  • 導航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • STM32單片機使用定時器中斷方式實現毫秒級延時的
    STM32單片機使用定時器中斷方式實現毫秒級延時的
  • STM32單片機使用定時器中斷方式實現毫秒級延時的
  •   發布日期: 2019-06-04  瀏覽次數: 1,701

    因為STM32 HAL庫中僅有對HAl_Delay()毫秒級的延時,為實現精確的微秒級延時,就不得不修改Systick,但由于HAL庫內部使用其作為超時判斷等操作,對其修改會發生不可預期的錯誤,不建議修改。因此,使用通用定時器進行定時操作。

    STM32單片機使用定時器中斷方式實現毫秒級延時的設計

     

    參考網上例程,使用定時器中斷方式實現延時,代碼如下:

    TIM3溢出時間=72MHz/(71+1)/(0+1)=1Mhz=1us

    計數模式:向上計數模式

    使能TIM3中斷

    */

    __IO staTIc uint32_t usDelay=0;

    void Delayms(uint32_t ms)

    {

    Delayus(ms*1000);

    }

    void Delayus(uint32_t us)

    {

    usDelay=us;

    HAL_TIM_Base_Start_IT(&htim3);

    while(usDelay);

    HAL_TIM_Base_Stop_IT(&htim3);

    }

    //重寫回調函數

    void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)

    {

    if(htim-》Instance == TIM3)

    {

    if(usDelay!=0)

    {

    usDelay--;

    }

    }

    }

    雖然說以上程序的并沒什么錯誤,但在實際運行中,卻無法得到正確的運行。同時,在進行Debug調試時,單步執行又可以正常運行。

    主要原因在于:中斷間隔時間太短,導致中斷函數還沒有運行完成,其中斷標志位卻再次置位,導致在程序卡死。

    因此,關閉定時器中斷,采用定時器輪詢的方式實現延時,代碼如下:

    /*

    TIM3溢出時間=72MHz/(71+1)/(0+1)=1Mhz=1us

    計數模式:向下計數模式

    */

    void Delay_us(uint32_t us){

    uint16_t counter=us&0xffff;

    HAL_TIM_Base_Start(&htim3);

    __HAL_TIM_SetCounter(&htim3,counter);

    while(counter》1)

    {

    counter=__HAL_TIM_GetCounter(&htim3);

    }

    HAL_TIM_Base_Stop(&htim3);

    }

    void Delay_ms(uint32_t ms){

    Delay_us(1000*ms);

    }


  • ·上一篇:
    ·下一篇:
  • 其他關聯資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區松崗鎮潭頭第二工業城A區27棟3樓
    電話:0755-2955 6626
    傳真:0755-2978 1585
    手機:131 1300 0010
    郵箱:hu@szryc.com

    深圳市日月辰科技有限公司 版權所有:Copyright?2010-2023 www.qingjujia.cn 電話:13113000010 粵ICP備2021111333號
    主站蜘蛛池模板: 免费看日韩 | 美女扒开胸罩露出奶了无遮挡免费 | 澳门一级毛片免费播放 | 精品视频一区在线观看 | 国产一区二区久久精品 | 最新国语露脸精品国产 | 国产成人免费高清在线观看 | 黄色大片网站在线观看 | 999精品影视在线观看 | 欧美在线观看网站 | www日韩在线| 欧美一级毛片免费高清aa | 日韩福利在线视频 | 最新福利小视频在线播放 | 国产在视频线精品视频二代 | 日韩一级片在线免费观看 | 亚洲欧美综合日韩字幕v在线 | 欧美一二三区 | 国产一二区 | 欧美精品黄页在线观看大全 | 龙口护士门91午夜国产在线 | 中国美女黄色一级片 | 日韩精品欧美视频 | 日本无卡无吗中文免费 | 国产成人在线视频播放 | 国产亚洲精品欧美一区 | 国产精品一区二区三区四区五区 | 免费在线黄色网址 | 看黄色一级视频 | 69国产成人综合久久精品91 | 国产免费a | 午夜精品久久久久久99热7777 | 亚洲欧美日韩中文v在线 | 久草在线播放视频 | 亚洲三级在线看 | 青娱乐黄色 | 亚洲综合伊人色一区 | 精品国内视频 | 一级做a爰片性色毛片男 | 窝窝免费午夜视频一区二区 | 77777五月色婷婷丁香视频 |