單片機定時器初值計算舉例
一、10MS定時器初值的計算:
1.晶振12M
12MHz除12為1MHz,也就是說一秒=1000000次機器周期。10ms=10000次 機器周期。
65536-10000=55536(d8f0)
TH0=0xd8,TL0=0xf0
2.晶振11.0592M
11.0592MHz除12為921600Hz,就是一秒921600次機器周期,10ms=9216次機器周期。
65536-9216=56320(dc00)
TH0=0xdc,TL0=0x00
二、50MS定時器初值的計算:
1.晶振12M
12MHz除12為1MHz,也就是說一秒=1000000次機器周期。50ms=50000次 機器周期。
65536-50000=15536(3cb0)
TH0=0x3c,TL0=0xb0
2.晶振11.0592M
11.0592MHz除12為921600Hz,就是一秒921600次機器周期,50ms=46080次機器周期。
65536-46080=19456(4c00)
TH0=0x4c,TL0=0x00
三、使用說明
以12M晶振為例:每秒鐘可以執(zhí)行1000000次機器周期個機器周期。而T 每次溢出
最多65536 個機器周期。我們盡量應該讓溢出中斷的次數(shù)最少(如50ms),這樣對主程序的干擾也就最小。
1.晶振12M
12MHz除12為1MHz,也就是說一秒=1000000次機器周期。10ms=10000次 機器周期。
65536-10000=55536(d8f0)
TH0=0xd8,TL0=0xf0
2.晶振11.0592M
11.0592MHz除12為921600Hz,就是一秒921600次機器周期,10ms=9216次機器周期。
65536-9216=56320(dc00)
TH0=0xdc,TL0=0x00
二、50MS定時器初值的計算:
1.晶振12M
12MHz除12為1MHz,也就是說一秒=1000000次機器周期。50ms=50000次 機器周期。
65536-50000=15536(3cb0)
TH0=0x3c,TL0=0xb0
2.晶振11.0592M
11.0592MHz除12為921600Hz,就是一秒921600次機器周期,50ms=46080次機器周期。
65536-46080=19456(4c00)
TH0=0x4c,TL0=0x00
三、使用說明
以12M晶振為例:每秒鐘可以執(zhí)行1000000次機器周期個機器周期。而T 每次溢出
最多65536 個機器周期。我們盡量應該讓溢出中斷的次數(shù)最少(如50ms),這樣對主程序的干擾也就最小。
評論