<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 51單片機定時(shí)器和計數器區別

51單片機定時(shí)器和計數器區別

作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò ) 收藏
51單片機的學(xué)習過(guò)程中,我們經(jīng)常會(huì )發(fā)現中斷、計數器/定時(shí)器、串口是學(xué)習單片機的難點(diǎn),對于初學(xué)者來(lái)說(shuō),這幾部分的內容很難理解。但是我個(gè)人覺(jué)得這幾部分內容是單片機學(xué)習的重點(diǎn),如果在一個(gè)學(xué)期的課堂學(xué)習或者自學(xué)中沒(méi)有理解這幾部分內容,那就等于還沒(méi)有掌握51單片機,那更談不上單片機的開(kāi)發(fā)了,我們都知道在成品的單片機項目中,有很多是以這幾部分為理論基礎的,萬(wàn)年歷是以定時(shí)器為主的,報警器是以中斷為主的,聯(lián)機通訊是以串口為主的。

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

本文引用地址:http://dyxdggzs.com/article/201611/317906.htm

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

在定時(shí)器和計數器中都有一個(gè)溢出的概念,那什么是溢出了。呵呵,我們可以從一個(gè)生活小常識得到答案,當一個(gè)碗放在水龍頭下接水的時(shí)候,過(guò)了一會(huì )兒,碗的水滿(mǎn)了,就發(fā)生溢出。同樣的道理,假設水龍頭的水是一滴滴的往碗里滴,那么總有一滴水是導致碗中的水溢出的。在碗中溢出的水就浪費了,但是在單片機的定時(shí)計數器中溢出將導致一次中斷,至于什么是中斷我們下次再講,這里只是初步的提下概念,中斷就是能夠打斷系統正常運行,而去運行中斷服務(wù)程序的過(guò)程,當服務(wù)程序運行完以后又自動(dòng)回到被打斷的地方繼續運行。

在定時(shí)器計數器中,我們有個(gè)概念叫容量,就是最大計數量。方式0是2的13次方,方式1是2的13次方,方式2是2的8次方,方式3是2的8次方。把水滴比喻成脈沖,那么導致碗中水溢出的最后一滴水的就是定時(shí)計數器的溢出的最后一個(gè)脈沖。

在各種單片機書(shū)本中,在介紹定時(shí)計數器時(shí)都講到一個(gè)計數初值,那什么是計數初值呢?在這里我們還是假設水滴碗。假設第一百滴水能夠使碗中的水溢出,我們就知道這個(gè)碗的容量是100。問(wèn)題1,我如何才能使碗接到10滴水就溢出呢?呵呵,我可以想象,如果拿一個(gè)空碗去接水,那么還是得要100滴水才能溢出,但是如果我們拿一個(gè)已經(jīng)裝有水的碗拿去接,那就不用100滴了。到此我們可以算出,要使10滴水讓碗中的水溢出,那么碗中就先要裝90滴水。

在定時(shí)計數器中,這90滴水就是我們所謂的初始值。問(wèn)題2,在一個(gè)車(chē)間我們如何利用單片機對100件產(chǎn)品進(jìn)行計件,并進(jìn)行自動(dòng)包裝呢?

我們可以利用計數器計數100,在中斷中執行一個(gè)自動(dòng)包裝的動(dòng)作就可以了。

在這里計數初值有3個(gè),假設有方式0:計數初值=8912(2的13次方)—100=8812。方式1:計數初值=65536(2的16次方)—100=65436。方式0:計數初值=256(2的8次方)—100=156。

根據所得的初始值,再將其轉換為16進(jìn)制或者2進(jìn)制,就可以進(jìn)行計數或者定時(shí)了。當然要讓程序完全的運行起來(lái)還需要相應的寄存器進(jìn)行設置。這些可以從各種單片機教程中找到。



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>