新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)定時器工作方式

51單片機(jī)定時器工作方式

作者: 時間:2013-05-13 來源:網(wǎng)絡(luò) 收藏

一般情況處,只有在T1以2運(yùn)行(當(dāng)波特率發(fā)生器用)時,才讓T0工作于方式3的。

/計(jì)數(shù)器的定時/計(jì)數(shù)范圍

0:13位定時/計(jì)數(shù)方式,因此,最多可以計(jì)到2的13次方,也就是8192次。

1:16位定時/計(jì)數(shù)方式,因此,最多可以計(jì)到2的16次方,也就是65536次。

工作方式2和工作方式3,都是8位的定時/計(jì)數(shù)方式,因此,最多可以計(jì)到2的8次方,也說是256次。

預(yù)置值計(jì)算:用最大計(jì)數(shù)量減去需要的計(jì)數(shù)次數(shù)即可。

例:流水線上一個包裝是60盒,要求每到12盒就產(chǎn)生一個動作,用單片機(jī)的工作方式0來控制,應(yīng)當(dāng)預(yù)置多大的值呢?對了,就是8192-60=8132。當(dāng)然設(shè)為計(jì)數(shù)時,需將C/T=1。

以上是計(jì)數(shù),明白了這個道理,定時也是一樣。

初學(xué)者應(yīng)多看相關(guān)書籍中的定時/中斷部分,對個標(biāo)志位的處理與應(yīng)用要能理解,對你的應(yīng)用開發(fā)有很大幫助的!!!,特別是在按鍵的消抖、延時等方面。下面給出一個實(shí)驗(yàn),網(wǎng)友只要燒寫進(jìn)89C51,放到實(shí)驗(yàn)板即可看到效果,然后在想????

方式0的應(yīng)用:

應(yīng)用T1產(chǎn)生1MS的定時,并使P1。0輸出周期的2MS方波,設(shè)晶震6MHZ。

首先要計(jì)算T0的初始值,以定時器方式工作時,每一機(jī)器周期計(jì)數(shù)器加1,6MHZ晶震時的機(jī)器周期T=12/F=12/6*10的6次方,設(shè)初值為X,則:

2的13次方-X/2*10的負(fù)3次方 =10的負(fù)3次方 X=7692

以13位二進(jìn)制數(shù)表示為:X=1111000001100B(從前算8位為F0H;)

計(jì)算得:TH0初值為0F0H,TL0初值為0CH;

因復(fù)位以后,TMOD、TCON初值為0,因此以定時器方式0工作時,初始化程序不必對TMOD重置0,我們查詢TF0的狀態(tài)來控制P1。0輸出。在P1。0端得到周期為2MS的方波。

程序清單:

START:MOV TL0,#0CH;初值寫入T0

MOV TH0,#0F0H;

SETB TR0;啟動T0計(jì)數(shù)

LOOP:JBC TF0,PTF0

AJMP LOOP

PTF0:MOV TL0,#0CH;計(jì)數(shù)初值重裝

MOV TH0,#0F0H;

CPL P1。0;P1。0求反

AJMPN LOOP

您可以改變定時初值來改變方波的寬度。

51單片機(jī)相關(guān)文章:51單片機(jī)教程


塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理

上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉