<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

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

          51單片機定時器工作方式

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

          計算得: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計數(shù)

          LOOP:JBC TF0,PTF0

          AJMP LOOP

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

          MOV TH0,#0F0H;

          CPL P1。0;P1。0求反

          AJMPN LOOP

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

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


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

          上一頁 1 2 下一頁

          關(guān)鍵詞: 51單片機 定時器 工作方式

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();