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

          新聞中心

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

          51單片機(jī)定時(shí)器定時(shí)模式

          作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏
          寫(xiě)點(diǎn)專(zhuān)業(yè)的知識(shí)吧,也是初學(xué),大家共同學(xué)習(xí)。好,廢話(huà)少說(shuō),進(jìn)入主題

          初學(xué)51單片機(jī)的人都接觸到定時(shí)器這個(gè)東西,關(guān)于定時(shí)器也有很多資料,包括內(nèi)部結(jié)構(gòu),如何執(zhí)行。但是說(shuō)到模式,我想剛學(xué)的時(shí)候聽(tīng)他們講的那堆亂七八糟的模式都很費(fèi)解,什么模式0,模式1,十六位,八位。我到現(xiàn)在也沒(méi)有明白。但是我在編程時(shí),對(duì)這東西有一個(gè)初步的理解。

          本文引用地址:http://www.ex-cimer.com/article/201611/324001.htm

          首先是定時(shí)器為啥要先裝初值,這東西打個(gè)比方,古代定時(shí)用的是沙漏,沙漏是先在桶中裝上沙子,在鉆一個(gè)眼,沙子都溜走時(shí),為一個(gè)周期。如果要定時(shí),裝的就是最后的那個(gè)時(shí)間,加入我定10毫秒,則是10、9、8、7、6……,直到0,啟動(dòng)中斷。而還有一種方法就在木桶中滴水,木桶的容積是一定的,水滴滿(mǎn)以后就是一個(gè)周期。加入那個(gè)木桶可以裝10毫秒的水,當(dāng)水漫以后,就是10毫秒到了,啟動(dòng)中斷。而如果我不想裝10毫秒,我只想要5毫秒呢?方法就是先在桶中裝入5毫秒的水,然后啟動(dòng)定時(shí)器,這時(shí),只需再滴入5毫秒,就可以將水裝滿(mǎn)。這就是為什么要給單片機(jī)定時(shí)器裝初值的原因。

          還有一個(gè)就是模式,我看了很多書(shū),也聽(tīng)了視頻,也沒(méi)鬧清講的是什么?但是我知道他們的區(qū)別在時(shí)間上,以12m晶振為例,在方式0下,最大可以定時(shí) 8.192毫秒。而方式1下最大可以定時(shí)65.535毫秒。而方式2和3下最大可以定時(shí)0.256毫秒。用的時(shí)候,要看你的具體需求,如果10毫秒內(nèi)中斷一次,則方式0就可以了,如果1毫秒內(nèi)中斷一次則需要用方式2或3。而方式3則是自動(dòng)重裝八位計(jì)時(shí)器。我的理解,意思是你不需要用程序來(lái)裝初值,裝初值由硬件完成,節(jié)省你裝初值所用的時(shí)間。當(dāng)然,我從來(lái)沒(méi)用過(guò),我用的最多的是方式0和1。

          基本上就是這意思,如果理解的有問(wèn)題,歡迎大家批評(píng)指正。



          評(píng)論


          技術(shù)專(zhuān)區(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); })();