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

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

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

3天內不再提示

單片機延時的相關概念和分類

Q4MP_gh_c472c21 ? 來源:嵌入式專欄 ? 作者:strongerHuang ? 2022-05-11 13:23 ? 次閱讀

嵌入式項目中,軟件開發基本上都會使用到延時,那么,該用軟件延時還是硬件延時?它們又有什么區別呢?

今天,我們就來講講關于硬件延時和軟件延時的內容,以及二者的區別。

硬件和軟件延時

延時的種類很多,先給大家普及一下延時相關概念和分類。

1、硬件延時

硬件延時是指利用具有計數功能的硬件進行延時。

比如:定時器Timer)、 實時時鐘(RTC)、系統滴答定時器(SysTick)等具有計數功能的硬件。

2、軟件延時

相對硬件延時而言,軟件延時就是寫一段軟件代碼,通過消耗CPU時間進行延時。

比如軟件延時函數:

void Delay(uint32_t Cnt){  uint32_t i;
  while(Cnt--)  {    for(i=0; i<0x80000; i++);  }}

阻塞和非阻塞延時

在實際應用中,延時分阻塞和非阻塞延時。

1、阻塞延時

阻塞延時是指CPU一直停留阻塞,不去做其它事情,直到延時結束結束。

像上面那個軟件延時(Delay)就是一個典型的阻塞延時,一直消耗CPU,直到延時結束。

2、非阻塞延時

非阻塞延時是指在延時期間沒有阻塞CPU,也就是說,CPU在延時期間可以執行其它代碼。

比如:利用定時器中斷延時,只需要開啟定時器,在中斷(計數)到來之前,CPU可以執行其它代碼。

3、額外舉例

a.利用定時器也能實現阻塞延時,比如STM32的HAL自帶的阻塞延時:

__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)  {  }}

b.利用RTOS自帶的系統延時實現非阻塞延時,這個實現原理實際是利用了硬件延時(系統滴答定時器)。

當然,這個延時的原理(延時函數代碼)相對比較復雜,對于普通用戶只需要知道如何調用以及簡單原理即可,感興趣的老鐵可以自行研究一下。

通常在一些RTOS的(Demo)例子的任務中都有系統延時,比如ucos非阻塞延時:

OSTimeDly(10);

ca338d28-d0e7-11ec-bce3-dac502259ad0.png

再比如FreeRTOS非阻塞延時:

vTaskDelay(10);

ca5d3f06-d0e7-11ec-bce3-dac502259ad0.png

硬件和軟件延時區別

通過以上分析,其實不難得出,硬件延時相對軟件延時更普遍。

軟件相對硬件延時精度更差;軟件延時為阻塞延時,硬件延時可阻塞,也可非阻賽延時;硬件延時應用更靈活、更廣泛......

在實際應用中,硬件延時、非阻塞延時相更普遍。

原文標題:一文弄懂單片機硬件與軟件延時的區別

文章出處:【微信公眾號:嵌入式ARM】歡迎添加關注!文章轉載請注明出處。

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

    關注

    6043

    文章

    44621

    瀏覽量

    638583
  • 嵌入式
    +關注

    關注

    5093

    文章

    19178

    瀏覽量

    307701
  • 延時
    +關注

    關注

    0

    文章

    107

    瀏覽量

    25582
  • 硬件
    +關注

    關注

    11

    文章

    3382

    瀏覽量

    66455
  • 軟件
    +關注

    關注

    69

    文章

    5013

    瀏覽量

    88081

原文標題:一文弄懂單片機硬件與軟件延時的區別

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    STM32單片機延時原理和延時函數方法

    當涉及到單片機編程時,延時是一項常見但關鍵的任務。在許多應用中,我們需要控制程序暫停一段時間,以實現精確的時間控制或協調不同設備之間的操作。本文將以STM32為例,介紹關于單片機延時
    發表于 08-09 09:13 ?1.8w次閱讀

    單片機的特點與分類概述

    第一章 單片機概述1.1 單片機概念1.2 單片機的特點1.3 單片機的發展1.4 單片機
    發表于 01-19 06:41

    單片機C 語言的精確延時程序設計

    單片機C 語言的精確延時程序設計
    發表于 05-16 14:50 ?47次下載

    基于單片機+CPLD的多路精確延時控制系統設計

    根據多路精確延時控制系統的設計參數指標,利用單片機和CPLD的功能特性與片上資源,設計了基于CPLD與多個單片機的多路精確延時控制系統,實現了多路獨立調整、顯示,并能輸出
    發表于 12-16 16:15 ?43次下載

    PIC 8位單片機分類和特點

    PIC 8位單片機分類和特點 PIC單片機教程 -PIC 8位單片機分類和特點  由美國Microchip公司推出的P
    發表于 03-27 17:07 ?2107次閱讀

    單片機分類

    單片機分類介紹:      51系列單片機       51系列單片機
    發表于 07-03 11:48 ?3049次閱讀

    單片機延時計算小程序

    電子發燒友網站提供《單片機延時計算小程序.zip》資料免費下載
    發表于 09-17 17:24 ?6次下載

    51單片機匯編語言教程_單片機延時程序分析

    51單片機匯編語言教程:5課單片機延時程序分析
    發表于 01-19 15:26 ?0次下載

    單片機延時計算小程序

    單片機延時計算小程序
    發表于 12-01 16:44 ?2次下載

    單片機延時計算小程序

    單片機延時計算小程序
    發表于 12-28 11:07 ?6次下載

    單片機延時函數的資料合集免費下載

    本文檔的主要內容詳細介紹的是單片機延時函數的資料合集免費下載包括了:1.51單片機延時,晶振為11.0592MHz,(粗略延時,定時器
    發表于 08-02 17:34 ?8次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>延時</b>函數的資料合集免費下載

    【Practical】51單片機軟件延時1S

    51單片機軟件延時1S
    發表于 11-12 14:51 ?13次下載
    【Practical】51<b class='flag-5'>單片機</b>軟件<b class='flag-5'>延時</b>1S

    單片機延時問題20問

    簡介:延時與中斷出錯,是單片機新手在單片機開發應用過程中,經常會遇到的問題,本文匯總整理了包含了MCS-51系列單片機、MSP430單片機
    發表于 11-13 21:06 ?6次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>延時</b>問題20問

    STM32單片機SysTick實現精確延時

    STM32單片機SysTick實現精確延時
    發表于 11-23 18:21 ?11次下載
    STM32<b class='flag-5'>單片機</b>SysTick實現精確<b class='flag-5'>延時</b>

    關于單片機分類

    作為一個接觸單片機編程工作多年的硬件研發人員,簡單的談下我心里的單片機分類。
    發表于 02-10 10:38 ?3次下載
    關于<b class='flag-5'>單片機</b><b class='flag-5'>分類</b>
    主站蜘蛛池模板: 手机在线免费观看视频 | 欧美色亚洲 | 黄黄的网站在线观看 | 精品看片 | 国产综合精品久久亚洲 | 亚洲高清中文字幕一区二区三区 | 国产视频h | 亚洲成a人片在线观看www | 欧美xxxx做受欧美88bbw | 午夜影院普通 | 色婷婷综合激情视频免费看 | 天天摸天天做天天爽水多 | 性视频软件 | 色午夜视频 | 日本一二区视频 | 久久青草91线频免费观看 | 91在线免费看 | 欧美性幼| 亚洲 图片 小说 欧美 另类 | 国产一级毛片午夜 | 天天爽天天爱 | 美国一级毛片免费看成人 | 亚洲啪啪免费视频 | 亚洲成年人网 | 亚洲欧美国产视频 | 爱爱欧美 | 天天色色网 | 在线观看一区二区三区视频 | 久久精品国产精品亚洲婷婷 | 色噜噜噜 | www.激情五月 | 精品三级国产精品经典三 | 三级视频网站 | 美女扒开尿口让男人桶 | 国产精品一区二区综合 | 天堂网www天堂在线网 | 特黄a大片免费视频 | 国产美女一区二区三区 | 三级在线播放 | 色女人综合 | 天天做天天爱天天爽 |