1. 51系列單片機的定時器/計數器有哪幾種工作方式
定時器0有四種工作方式:
方式0:13位定時 /計數器模式
方式1:16位定時 /計數器模式
方式2:8位可重裝載定時 /計數器模式
方式3:兩個單獨8位定時 /計數器模式
定時器1隻有三種方式,同上面三種。
2. mcs-51單片機的定時/計數器有哪幾種工作方式
mcs-51單片機的定時/計數器有四種工作方式:
方式0:13位定時計數器
方式1:16位定時計數器
方式2:8位重裝載定時計數器
方式3:兩個獨立8位定時器,只有定時器0有,定時器1無此功能
3. 51單片機用定時器計時應該如何計算求大神支招
這個其實很簡單的,你只需要知道一個條件即可:晶振頻率。
因為51單片機的機器周期計算公式是12/晶振頻率MHz,若晶振為12MHz,則機器周期就是12/(12×10^6)=1us,也就是說計數器沒1us計數一次。
那麼有了這個條件就好辦多了,一般來說,12MHz晶振下,16位定時器滿計數是65536次,每次1us,最大就能計時65.536ms,則65536減去多少就是定時多少,如(65536-X)/256,就是定時X微秒。
那麼如果晶振不是12MHz,就要把上述的X乘以12/晶振,得到的值就是定時時長。原理相同。
有不懂的地方隨時回復我。
希望我的回答能幫助到你。
4. 51單片機各種位數定時器初值計算方法
對12MHz ,1個機器周期 1us ,12/fosc = 1us
。
方式0是13位定時器,最大時間間隔 = 2^13 = 8.192ms
方式1是16位定時器,最大時間間隔 = 2^16 = 65.536ms
方式2是8位定時器,最大時間間隔 = 2^8 = 0.256ms =256 us
方式3 僅適用於T0,此時T0分成兩個8位計數器,T1停止計數
當選用定時器的方式1時,設機器周期為Tcy,定時器產生一次中斷的時間為t,那麼需要計數的個數N=t/Tcy,裝入THX和TLX中的數分別為:
THX = (2^16 - N)/256 TLX = (2^16 -N )%256(此處的X為定時器0或定時器1)
公式為:(2^y - X)*Tcy = t
Tosc= 1/ fosc
一個機器周期 = 12個時鍾周期 = 12/fosc
溢出速率 = 1 / 溢出時間
故:初值X = 2^y – t/Tcy
THX = 高八位
TLX = 低八位
註:
X:定時器初值
N:計數值
y:定時器工作方式
fosc:晶振頻率
Tcy:機器周期,Tosc:時鍾周期
Tcy = 1/Tosc
5. c51單片機中定時器工作方式
定時/計數器的工作方式
一、方式0
方式0為13位計數,由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時向TH0進位,TH0溢出時,置位TCON中的TF0標志,向CPU發出中斷請求。
工作方式3將T0分成為兩個獨立的8位計數器TL0和TH0。
6. mcs-51單片機計數器的四中方式是哪些
一、工作方式0
定時器/計數器的工作方式0稱之為13位定時/計數方式。它由TL(1/0)的低5位和TH(0/1)的8位構成13位的計數器,此時TL(1/0)的高3位未用。
1、工作方式1
工作方式1是16位的定時/計數方式,將M1M0設為01即可,其它特性與工作方式0相同。
2、工作方式2
在介紹這種式方式之前先讓我們思考一個問題:比如我要計1000個數,可是16位的計數器要計到65536才滿,怎麼辦呢?辦法是用預置數,先在計數器里放上64536,再來1000個脈沖,不就行了嗎?是的,但是計滿了之後我們又該怎麼辦呢?要知道,計數總是不斷重復的,當計滿並溢出後,計數器裡面的值變成了0(為什麼,這時硬體自動清零),因此下一次將要計滿65536後才會溢出,這可不符合要求,怎麼辦?當然辦法很簡單,就是每次一溢出時執行一段程序(要不然要溢出干嗎?)可以在這段程序中做把預置數64536送入計數器中的事情。所以採用工作方式0或1都要在溢出後做一個重置預置數的工作,做工作當然就得要時間,一般來說這點時間不算什麼,可是有一些場合我們還是要計較的(如串口通信等),所以就有了第三種工作方式自動再裝入預置數的工作方式。此時M1M0=10。
自動重裝時TH0(1)賦初值(預置數)
通常這種式作方式常用於波特率發生器(用於串列介面中),這種用途時,定時器就是為了提供一個時間基準。計數溢出後不需要做事情,要做的僅僅只有一件,就是重新裝入預置數,再開始計數,而且中間不要任何延遲,可見這個任務用工作方式2來完成是最好的了。
3、工作方式3
這種式作方式之下,定時/計數器0被拆成2個獨立的定時/計數器來用。其中,TL0可以構成8位的定時器或計數器的工作方式,而TH0則只能作為定時器來用。我們知道作定時、計數器來用,需要控制,計滿後溢出需要有溢出標記,T0被分成兩個來用,那就要兩套控制及、溢出標記了,從何而來呢?TL0還是用原來的T0的標記,而TH0則借用T1的標記。如此T1不是無標記、控制可用了嗎?是的。
一般情況處,只有在T1以工作方式2運行(當波特率發生器用)時,才讓T0工作於方式3的。
7. 51單片機定時計數器四種工作方式哪種可以實現計數初值的自動載入
51單片機定時計數器四種工作方式中,方式2可以實現計數初值的自動載入。
解釋分析:
16位的計數器只用了8位來計數,用TLx來進行計數,而THx用於保存初值,當TLx計滿時則溢出,該方式的溢出狀態一方面使TF變化,另一方面使TH的值再次置入TL,正所謂自動重置定時/計數器
自動裝載初值,無需程序運行賦值,此方式更精確。
此時MAX值為28=256,設計數值為100。
初值為156=10011100B(0x9C)。
TH0=TL0=0x9C。
定時/計數器有如下一些用途:
(1)產生所需頻率的脈沖,如產生頻率1000,占空比1:1的脈沖波。
(2)在累加計數中的應用,計數器可在一段時間內記錄信號A經整形後的脈沖個數。
(3)在頻率測量中的應用,通過測量脈沖寬度或在一定時間內測量脈沖的個數,從而推算出脈沖的頻率。
(4)定時/計數器在計時中的應用,定時/計數器可對時鍾信號,如秒信號進行計數,也可用來倒計時,秒錶計,時間循環等。
8. 51-單片機定時器的工作方式
方式0: 13位定時計數方式,最大計數值為2^13=8192,定時8192個機器周期;
.
方式1: 16位定時計數方式,最大計數值為2^16=65536,定時65536個機器周期;
.
方式2: 8位自動重裝計數方式,最大計數值為2^8=256,定時256個機器周期;
.
方式3: 特殊工作方式。將定時器0分成兩個彼此獨立8位計數器。
9. 51單片機的四種工作方式
1 工作方式0
定時器/計數器T0工作在方式0時,16位計數器只用了13位,即TH0的高8位和TL0的低5位,組成一個13位定時器/計數器。
1)、工作在定時方式
2)、工作在計數方式
2 工作方式1
定時器T0工作方式1與工作方式0類同,差別在於其中的計數器的位數。工作方式0以13位計數器參與計數,工作方式1則以16位計數器參與計數。
1)、工作在定時方式
2)、工作在計數方式
工作方式1是16位計數器。這是工作方式1與工作方式0在計數方式時唯一差別。
3 工作方式2
定時器T0在工作方式2時,16位的計數器分成了兩個獨立的8位計數器TH0和TL0。
1)、工作在定時方式
2)、工作在計數方式
工作方式2與工作方式0、方式1的差別,在於工作方式2是一個8位的計數器。
4 工作方式3
工作方式3僅對定時器T0有效。當定時器T0工作在方式3時,將16位的計數器分為兩個獨立的8位計數器TH0和TL0。
當定時器T0工作在方式3時,定時器T1隻能工作在方式0~2,並且工作在不需要中斷的場合。
10. mcs-51單片機的定時/計數器有哪幾種工作方式
有四種工作方式:
方式0,13位定時/計數方式。
方式1,16位的定時/計數方式。
方式2,自動重裝載8位工作方式
方式3,定時/計數器0被拆成2個獨立的定時/計數器來用。其中,tl0可以構成8位的定時器或計數器的工作方式,而th0則只能作為定時器來用。