在剛接觸單片機(jī)的時(shí)候都是不知道單片機(jī)應(yīng)該從哪里開(kāi)始學(xué)習(xí)起,也不知道單片機(jī)的定時(shí)是怎么設(shè)置的。那么對(duì)于新人來(lái)說(shuō)剛接觸單片機(jī)的話容易出現(xiàn)錯(cuò)誤的一個(gè)環(huán)節(jié)就是單片機(jī)的定時(shí)設(shè)置了,下面單片機(jī)培訓(xùn)機(jī)構(gòu)達(dá)內(nèi)科技的小編就給大家來(lái)講解下這個(gè)單片機(jī)的定時(shí)設(shè)置是怎么樣的,給正在學(xué)習(xí)單片機(jī)的你提供一些技術(shù)上的講解。
單片機(jī)定時(shí)器延時(shí)時(shí)間的計(jì)算:
單片機(jī)延時(shí)時(shí)間要根據(jù)晶振頻率計(jì)算,不同板子可能有所不同。
時(shí)鐘周期:
1/時(shí)鐘源,在我現(xiàn)在這塊板子上,晶振頻率是11.0592M,也就是時(shí)鐘周期是 1/11059200秒
機(jī)器周期:
一般51單片機(jī)是12個(gè)時(shí)鐘周期,我的板子也就是 12/11059200秒
單次定時(shí)長(zhǎng)時(shí)間:
如果是16位的計(jì)數(shù)器,16位值是65535,共可計(jì)數(shù)65536次。基本的常數(shù)一定要記住,還要記住8位值是255,共可計(jì)數(shù)256次,還要記住8位上每位代表的數(shù)值。
12 * 65536/11059200 = 0.0711 s,也就是,71 ms內(nèi)的定時(shí)可以單次定時(shí)就完成。如果定時(shí)時(shí)間超過(guò)71 ms,就要循環(huán)了。
一次定時(shí)需要幾次機(jī)器周期:
計(jì)算公式:定時(shí)秒數(shù)/機(jī)器周期
比如我要定時(shí)1秒, 1/(12/11059200)= 921600次,16位計(jì)數(shù)器可計(jì)數(shù)65536次,921600次早就益出了。我們可以每次定時(shí)10 ms,循環(huán)100次就可以定時(shí)1秒了,1 s縮小100百倍就是10 ms, 也就是每次需要計(jì)數(shù)9216次。
確實(shí)計(jì)數(shù)器初始值:
定時(shí)10 ms時(shí),如果計(jì)數(shù)器從0開(kāi)始計(jì)數(shù),我們就不知道什么時(shí)候到了9216次。所以應(yīng)該計(jì)數(shù)了9216次,16位計(jì)數(shù)器多計(jì)數(shù)95536次,然后就溢出,一溢出TCON的TF位就會(huì)置1,我們只要經(jīng)常檢測(cè)TF位就可以知道什么時(shí)候完成10ms的定時(shí)了。
計(jì)算公式:計(jì)數(shù)器初始值=計(jì)數(shù)次數(shù) - 需要計(jì)數(shù)次數(shù)
如果定時(shí)10 ms,計(jì)數(shù)器的初始值就是 65536 - 9216
計(jì)算計(jì)數(shù)器的高位和低位:
16位的計(jì)數(shù)器,也就是兩個(gè)8位組成,8位的計(jì)數(shù)次數(shù)是256。所以:
計(jì)數(shù)器高位 = 初始值/256
計(jì)數(shù)器低位 = 初始值%6
關(guān)于單片機(jī)的定時(shí)延遲計(jì)算公式的內(nèi)容達(dá)內(nèi)科技的小編就和大家講解這么多了,如果說(shuō)你想要學(xué)習(xí)更多關(guān)于單片機(jī)的技術(shù)上面的知識(shí)的話,那么達(dá)內(nèi)科技的小編建議大家可以來(lái)我們達(dá)內(nèi)科技的單片機(jī)培訓(xùn)班進(jìn)行學(xué)習(xí)的,你也可以點(diǎn)點(diǎn)擊我們文章下面的獲取試聽(tīng)資格按鈕來(lái)獲取我們的單片機(jī)課程免費(fèi)試聽(tīng)資格,在試聽(tīng)中你可以更加深入的了解我們達(dá)內(nèi)科技。