微控制器,一秒的定時器初值怎麼算?不要結果要過程謝了哈!
- 2022-09-02
一。10MS定時器初值的計算:1。晶振12M12MHz除12為1MHz,也就是說一秒=1000000次機器週期。10ms=10000次
機器週期。65536-10000=55536(d8f0)TH0=0xd8,TL0=0xf02。晶振11。0592M11。0592MHz除12為921600Hz,就是一秒921600次機器週期,10ms=9216次機器週期。65536-9216=56320(dc00)TH0=0xdc,TL0=0x00二。50MS定時器初值的計算:1。晶振12M12MHz除12為1MHz,也就是說一秒=1000000次機器週期。50ms=50000次
機器週期。65536-50000=15536(3cb0)TH0=0x3c,TL0=0xb02。晶振11。0592M11。0592MHz除12為921600Hz,就是一秒921600次機器週期,50ms=46080次機器週期。65536-46080=19456(4c00)TH0=0x4c,TL0=0x00同理1MS定時器初值的計算:1。晶振12M12MHz除12為1MHz,也就是說一秒=1000000次機器週期。1ms=1000次
機器週期。65536-1000=15536(fc18)TH0=0xfc,TL0=0x182。晶振11。0592M11。0592MHz除12為921600Hz,就是一秒921600次機器週期,50ms=922次機器週期。65536-922=19456(fc66)TH0=0xfc,TL0=0x66
首先定時器 不能一秒定時,你可以是假設我要0。05s
0。05x12000000(假設晶振是12mhz)/12=50000
65536-50000=15536
變成16進位制3cb0
th0=0x3c;
tl0=0xb0;
kao()
interrupt
1
using
0
{
cor++;
if(cor==20)(一秒定時到手了)
{
}
th0=0x3c;
tl0=0xb0;要把初值送回來
}
上一篇:stkit小票是什麼?
下一篇:苗族帽子上的鳥的含義?