A. 單片機定時器 計數器的工作原理,及如何實現定時 計數功能
原理: 16位的定時器/計數器實質上就是一個加1計數器,其控制電路受軟體控制、切換。 當定時器/計數器為定時工作方式時,計數器的加1信號由振盪器的12分頻信號產生,即每過一個機器周期,計數器加1,直至計滿溢出為止。
顯然,定時器的定時時間與系統的振盪頻率有關。因一個機器周期等於12個振盪周期,所以計數頻率fcount=1/12osc。
兩個位元組最大數據為65536(十進制),或者0FFFFH(十六進制)
高位元組為TH0=(65536-X)/256,就是除以256後的整數部分;
低位元組為TL0=(65536-X)%256,減去高位元組後餘下的部分;
定時/計數器
定時/計數器T0和T1分別是由兩個8位的專用寄存器組成,即定時/計數器T0由TH0和TL0組成,T1由TH1和TL1組成。此外,其內部還有2個8位的特殊功能寄存器TMOD和TCON,TMOD負責控制和確定T0和T1的功能和工作模式,TCON用來控制T0和T1啟動或停止計數,同時包含定時/計數器的狀態。
以上內容參考:網路-定時器中斷
B. 單片機的定時和計數有什麼 區別
1、觸發來源不同:定時器的觸發來源是外部脈沖,而計數器的觸發來源是時鍾信號。
2、計數對象不同:定時器實際上也是計數器,只是計數的是固定周期的脈沖;計數器只是計數時間。
單片機也被稱為單片微控器,屬於一種集成式電路晶元。在單片機中主要包含CPU、只讀存儲器ROM和隨機存儲器RAM等,多樣化數據採集與控制系統能夠讓單片機完成各項復雜的運算,無論是對運算符號進行控制,還是對系統下達運算指令都能通過單片機完成。
由此可見,單片機憑借著強大的數據處理技術和計算功能可以在智能電子設備中充分應用。簡單地說,單片機就是一塊晶元,這塊晶元組成了一個系統,通過集成電路技術的應用,將數據運算與處理能力集成到晶元中,實現對數據的高速化處理。
(2)單片機定時器計數器擴展閱讀:
單片機的應用
1、節能控制
由於智能電子設備可能會被經常攜帶外出,因此對這些設備的能耗要求是非常高的,所以經常會設計一些節能控制模塊,從而提高智能電子設備的待機時長。
單片機技術在節能控制中的應用主要分為以下幾個方面:第一,智能電子設備在外出狀態下,大部分是處於輕負載的模式,這時候就需要通過節能控制,確保其基礎功能的前提下,進一步降低電量的消耗。
單片機通過對智能電子設備中數據的收集,可以大致推斷當前設備處於較低的負載,這時可以降低電壓及電流的輸出,達到節能的目的;第二,單片機可以控制能耗的節奏,例如:在小米手環中,收集人體的心率、睡眠和運動步數等數字,這些數字收集後會在本地進行存儲,然後以分鍾級的頻率進行上報。
信息未上報時,設備處於低能耗的狀態,信息上報時,會出現一些網路傳輸方面的消耗,單片機可以控制能耗的節奏,將手環的大部分時間控制在低能耗的狀態下,可以使得待機時間長達七十二小時以上。
2、智能語音設備
為了更好地提高智能電子設備的智能性,可以允許人類通過簡單的語言進行控制,實現語音人機交互的目的。目前,語音處理晶元已經開發完成,並開始運用到智能電子設備中。單片機在智能語音設備中的應用,主要分為以下兩個部分。
第一,軟體設置方面,由於單片機可以通過編程的方式,處理一些業務邏輯,因此就能夠對智能語音處理過程進行操作。例如:在導航智能電子設備中,可以將其中的一些道路名稱、距離等進行提取,然後進行播報;同時,還可以選擇不同的名人口吻進行播報,真正實現智能化的定製操作,更好地滿足用戶的需求。
第二,硬體設計方面,由於智能語音設備對資源的消耗比較大,因此為了更好地延長產品的待機時間,會使用單片機技術動態控制產品的功率,進一步降低對電量的消耗。同時,還可以通過單片機技術,提高硬體的響應時間,進一步提高用戶的體驗。
3、報警控制
對於部分電子設備來講,會擁有自動報警的設置,報警控制也是單片機技術經常使用的領域,主要體現在以下幾個方面:第一,對於一些自動報警裝置來講,例如:家裡經常使用的火災報警器,就是在外界環境達到一定條件下開啟智能報警的設備。
如果室內的煙霧濃度到達某種水平,或者是收集外界的數據達到某種狀態時,就會自動觸發報警設置,從而實現智能報警的功能;第二,對於一些智能電子設備來講,如果外在環境超過設備的工作環境范圍時,或者是設備存在一些異常情況時,就會觸發自身的報警機制,讓用戶能夠及時了解設備的運作詳情,並且根據報警信息提供解決方案。
4、醫療設備
隨著醫療設備技術的不斷提升,單片機開始在醫療設備中進行廣泛的應用,主要體現在:第一,對病人的身體特徵數據進行智能監控,可以將一些醫療設備安裝在病人身上,並對其身體的數據進行收集,然後與後台的控制系統進行交互,如果發現病人的身體特徵異常時,會及時產生報警。
C. 單片機片內定時器與計數器的主要區別是什麼
單片機片內定時計數器的主要區別是:
1)模式控制寄存器TMOD的D2或是D6位來控制。D2或D6位為0時,選擇定時工作方式;為1時選擇計數工作方式。
2)在定時方式時,計數脈沖輸入信號由內部時鍾提供;計數方式時計數脈沖來自於相應的外部輸入引腳。
3)定時器是對單片機的機器周期數進行計數;計數器對外部輸入脈沖信號計數,當信號產生由0到1的跳變時計數器的值加一。
模式控制寄存器的D1D0或是D5D4位用來選擇定時/計數器的四種工作模式,00表示模式0,01表示模式1,10表示模式2,11表示模式3。這4中操作模式各有特點及優勢,可以根據需要選擇合適的操作模式。
(3)單片機定時器計數器擴展閱讀
定時/計數器的初始化步驟:
1)確定工作方式、操作模式、啟動控制方式並寫入TMOD寄存器;
2)設置定時或計數器的初值;
3)根據要求是否採用中斷方式,直接對IE位賦值;
4)啟動定時器工作,可使用SETB
TRi啟動。
參考資料來源:《單片機原理及應用》
曹巧媛
編著
電子工業出版社
第四章
單片機定時功能及應用
第一節
定時器/計數器的結構與工作原理
第二節
定時計數器的操作模式及應用
D. 51單片機定時/計數器的定時功能和計數功能有何不同
1、產生的脈沖不同
計數功能:單片機外部觸發的脈沖。
定時功能:單片機內部在晶振的觸發下產生的脈沖。
2、工作方式不同
計數功能:當定時/計數器設置為計數工作方式時,計數器對來自輸入引腳T0(P3.4)和T1(P3.5)的外部信號計數,外部脈沖的下降沿將觸發計數,檢測一個由1到0的負跳變需要兩個機器周期。
定時功能:計數器對內部機器周期計數,每過一個機器周期,計數器增1,直至計滿溢出。
3、應用范圍不同
計數功能:對一些外部事件計數時則採用。
定時功能:需要准確計算時間時採用。
E. 單片機定時器/計數器主要有什麼作用
作用一:計數概念的引入
作用二:定時
作用三:溢出
單片機提供內部定時和外部計數的功能,功能差不多都是定時和計數達到終點時,產生中斷,而CPU則暫時放下目前所執行的程序區處理中斷。
定時器:主要用於產生固定時間(比較精確),也可以作為UART等外設的頻率發生器。
計數器:主要是計量引腳產生脈沖的個數。
F. 單片機的定時器或者計數器起到哪些作用
大部分單片機提供2~3個定時/計數器,少數提供1個或4個定時器。
有些定時/計數器還具有輸入捕獲、輸出比較和PWM(脈沖寬度調制)功能,如AVR單片機。
有的單片機還有專門的PCA(可編程計數器陣列)模塊和CCP(輸入捕獲輸出比較PWM)模塊,如PIC和Philips的部分中高檔單片機。利用這些模塊不僅可以簡化軟體設計,而且能減少佔用CPU的資源。
現在不少單片機還提供了看門狗定時器(WDT),當單片機「死機」後可以自動復位。
G. 51單片機T0作為定時器和計數器有哪些區別
51單片機T0作為定時器和計數器的區別:變化不同,含義不同。
一、變化不同:計數器記錄外部脈沖信號,信號每變化一次,計數器才加1;而定時器則是使用單片機內部的規則脈沖信號,脈沖的間隔是相同的。
二、含義不同:定時器T1沒有方式3 ,方式3隻適合定時器T0,使其增加一個8位定時器。若定時器T1選擇方式3,T1將停止工作,相當於TR1=0的情況。在工作方式寄存器TMOD中,高4位控制定時器T1,低4位控制定時器T0。
簡介
單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。相當於一個微型的計算機,和計算機相比,單片機只缺少了I/O設備。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。
H. 單片機定時器/計數器四種工作方式區別
方式0:13位定時計數方式,最大計數值為2^13=8192,定時8192個機器周期。此方式已經不再用了,是為了和以前的單片機兼容,學初者不用掌握。
方式1:16位定時計數方式,最大計數值為2^16=65536,定時65536個機器周期。此方式可實現最大的定時時間和最大計數次數。是最常用方式之一。
方式2:8位自動重裝計數方式,最大計數值為2^8=256,定時256個機器周期。此方式工作時定時或計數到了不用重裝初值,精度較高。另外在串口通訊時常用此方式。是最常用方式之一。
方式3:特殊工作方式。將定時器0分成兩個8位功能不全的定時計數器,要佔用T1部分功能。也不常用。
I. 51單片機定時計數器原理
其實就是計數器原理,所謂的定時器就是用計數器來實現的一個功能而已。
計數器的原理,很簡單,就是給個方波信號,一個方波,就加1即可,最簡單的都能用數字電子技術里的或門,與門,非門來實現的。專門做計數的晶元也是一大堆,這里我們就不討論怎麼用或門,非門,與門,做出一個計數器了吧。
那麼怎麼用計數器實現定時器的功能呢?其實很簡單,只要你給計數器的方波是規律的就可以了啊,比如做一個一秒鍾輸出一個方波的電路,然後把這個方波給計數器,即可,那麼這個計數器就是一個定時器了,假設計數器一開始是0,一個方波以後,計數器就變成了1,對吧,但是計數器的方波來源是穩定的,一秒鍾就給一個方波,那麼這個就是個1s的定時器了吧,我們可以通過計數器的數值,來確定時間了吧,這樣就可以完成定時的功能了吧。
單片機也是通過這種手段來形成的,你可能就要問了,那我單片機不是沒有方波發射的裝置嗎?對不起,單片機晶元內部自己內置了,所以你不需要自己做這個方波發生裝置,那麼單片機是用什麼來形成方波的呢?答案是你外置的晶振,單片機是通過你外部的那個晶振來實現的,而且晶振也是你單片機能跑起來的關鍵,他是單片機的CPU等內部部件工作的時間標准,比如晶振12MHZ,就是這個晶振1秒鍾,能有12M個方波形成懂吧,所以這個頻率是很高的了,但是單片機一般不在這么高的頻率上工作,所以CPU的時間單位,不是晶振的頻率,一般是要進行降頻處理的,也叫分頻,像51單片機,很多都是12分頻的,即外部晶振是12MHZ,內部CPU工作的頻率只有1MHZ,內部的計數器一般也不能在那麼高的頻率下工作,所以也是分頻的,你最需要了解的是計數器或定時器里的數值加1,對應的時間是多少,一般都是1ms這樣的整數倍。
然後計數器呢?計數器就是用晶振分頻後的方波來工作的,晶振工作穩定,頻率穩定,那麼定時器就穩定,而如果你不用定時器的時候呢?那麼計數器的計數端,就和來自晶振的方波,切斷,切換成對應的IO埠的線路即可,而外部的埠,他們的波形和頻率都不確定,所以就不是定時器了,如果你在外部,加個穩定的方波裝置,計數器也就是定時器了,只不過這個需要自己去實現,豈不是麻煩?所以一般都用單片機內部自帶的,方便而已。
J. 單片機定時器、計數器怎樣使用
工作方式0:13位方式由tl的低5位和th的8位構成13位計數器(tl1的高3位無效)。你說的例子應該是:
假設t=1111
1111
1100
1101
那麼th1=1111
1111
tl1=1100
1101
t=1111
1111
0
1101
(tl的高三位110無效去掉)
定時計數器按系統時鍾(c8051f)或系統時鍾的12分頻(8051)計數的時候是數數再跟你寫的t值比較,如果一樣了,看是不是要中斷或其它操作,不是t值進位,你理解有問題。
這種工作方式很少要,一般用方式一代替了。16進制好用。