131 1300 0010
其他
當前位置: 首頁>> 元件技術(shù)>>其他>>
  • 導航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • 51單片機計數(shù)器和定時器的本質(zhì)區(qū)別及應(yīng)用方法
    51單片機計數(shù)器和定時器的本質(zhì)區(qū)別及應(yīng)用方法
  • 51單片機計數(shù)器和定時器的本質(zhì)區(qū)別及應(yīng)用方法
  •   發(fā)布日期: 2019-03-12  瀏覽次數(shù): 1,369

    在51單片機的學習過程中,我們經(jīng)常會發(fā)現(xiàn)中斷、計數(shù)器/定時器、串口是學習單片機的難點,對于初學者來說,這幾部分的內(nèi)容很難理解。但是我個人覺得這幾部分內(nèi)容是單片機學習的重點,如果在一個學期的課堂學習或者自學中沒有理解這幾部分內(nèi)容,那就等于還沒有掌握51單片機,那更談不上單片機的開發(fā)了,我們都知道在成品的單片機項目中,有很多是以這幾部分為理論基礎(chǔ)的,萬年歷是以定時器為主的,報警器是以中斷為主的,聯(lián)機通訊是以串口為主的。

    51單片機計數(shù)器和定時器的本質(zhì)區(qū)別及應(yīng)用方法
     

     

    在這幾部分內(nèi)容中,計數(shù)器/定時器對于初學者說很容易搞混淆,下面我將對這方面的內(nèi)容結(jié)合自己的學習經(jīng)驗談幾點看法。

    計數(shù)器和定時器的本質(zhì)是相同的,他們都是對單片機中產(chǎn)生的脈沖進行計數(shù),只不過計數(shù)器是單片機外部觸發(fā)的脈沖,定時器是單片機內(nèi)部在晶振的觸發(fā)下產(chǎn)生的脈沖。當他們的脈沖間隔相同的時候,計數(shù)器和定時器就是一個概念。

    在定時器和計數(shù)器中都有一個溢出的概念,那什么是溢出了。我們可以從一個生活小常識得到答案,當一個碗放在水龍頭下接水的時候,過了一會兒,碗的水滿了,就發(fā)生溢出。同樣的道理,假設(shè)水龍頭的水是一滴滴的往碗里滴,那么總有一滴水是導致碗中的水溢出的。在碗中溢出的水就浪費了,但是在單片機的定時計數(shù)器中溢出將導致一次中斷。

    在定時器計數(shù)器中,我們有個概念叫容量,就是最大計數(shù)量。

    方式0是2的13次方,

    方式1是2的16次方,

    方式2是2的8次方,

    把水滴比喻成脈沖,那么導致碗中水溢出的最后一滴水的就是定時計數(shù)器的溢出的最后一個脈沖。

    在各種單片機書本中,在介紹定時計數(shù)器時都講到一個計數(shù)初值,那什么是計數(shù)初值呢?在這里我們還是假設(shè)水滴碗。假設(shè)第一百滴水能夠使碗中的水溢出,我們就知道這個碗的容量是100。

    舉例1,我如何才能使碗接到10滴水就溢出呢?我可以想象,如果拿一個空碗去接水,那么還是得要100滴水才能溢出,但是如果我們拿一個已經(jīng)裝有水的碗拿去接,那就不用100滴了。到此我們可以算出,要使10滴水讓碗中的水溢出,那么碗中就先要裝90滴水。在定時計數(shù)器中,這90滴水就是我們所謂的初始值。

    舉例2,在一個車間我們?nèi)绾卫脝纹瑱C對100件產(chǎn)品進行計件,并進行自動包裝呢?我們可以利用計數(shù)器計數(shù)100,在中斷中執(zhí)行一個自動包裝的動作就可以了。

    在這里計數(shù)初值有3個,假設(shè):

    方式0:計數(shù)初值=8192(2的13次方)—100=8092。

    方式1:計數(shù)初值=65536(2的16次方)—100=65436。

    根據(jù)所得的初始值,再將其轉(zhuǎn)換為16進制,就可以進行計數(shù)或者定時了。后面講解定時器初值的計算方法。


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

    深圳市日月辰科技有限公司 版權(quán)所有:Copyright?2010-2023 m.xbquwah.cn 電話:13113000010 粵ICP備2021111333號