單片機(jī)定時(shí)器定時(shí)計(jì)算方法
方式0 13位定時(shí)器最大時(shí)間間隔 = 2^13 = 8.192ms
方式1 16位定時(shí)器最大時(shí)間間隔 = 2^16 = 65.536ms
方式2 8位定時(shí)器最大時(shí)間間隔 = 2^8 = 0.256ms =256 us
定時(shí)5ms,計(jì)算計(jì)時(shí)器初值 M = 2^K-X*Fosc/12 12MHz
方式0: K=13,X=5ms,Fosc=12MHz 則 M = 2^13 - 5*10^(-3)*12*10^6/12= 3192 = 0x0C78
THx = 0CH,TLx = 78H,
方式1: K=16,X=5ms,Fosc=12MHz 則 M = 2^16 - 5*10^(-3)*12*10^6/12= 60536 = 0xEC78
THx = ECH,TLx = 78H,
50ms 12MHz THx = 3CH,TLx = B0H,
10ms THx = D8H,TLx = F0H,
方式2: 最大時(shí)間 2^8Fosc/12 = 0.256ms
十進(jìn)制數(shù)是怎么來(lái)的?
6MHz 一個(gè)機(jī)器周期 12/6 = 2us
定時(shí)1ms 計(jì)數(shù)初值x
(2^16-x)*2us = 1000us
x = 2^16 - 500 ,TH,TL 可置 -500
12MHz 一個(gè)機(jī)器周期 12/12 = 1us
12MHz 一個(gè)機(jī)器周期 12/12 = 1us
定時(shí)50ms 計(jì)數(shù)初值x
(2^16-x)*1us = 50000us
x = 2^16 - 50000 ,TH,TL 可置 -500
定時(shí)器 計(jì)內(nèi)部晶振頻率
計(jì)數(shù)器 計(jì)外部輸入CPU腳上的脈沖個(gè)數(shù) P3.4(T0) P3.5(T1) 負(fù)跳變加一
當(dāng)晶振為6MHz時(shí),最高計(jì)數(shù)頻率500KHz
寄存器
1 TH TL
2 TCON
TR0 TR1 其他位是中斷控制位
TMOD
GATE C/T1 M1 M0 GATE C/T0 M1 M0
C8051F00X
定時(shí)器:每個(gè)時(shí)鐘加1 時(shí)鐘可為系統(tǒng)時(shí)鐘或系統(tǒng)時(shí)鐘的1/12
CKCON
當(dāng)引腳上出現(xiàn)電平時(shí)啟動(dòng)T0 當(dāng)不滿(mǎn)足時(shí),停止T0,讀出以后清零 。
評(píng)論