51定时器初值计算

一. 10MS 定时器初值的计算:

1. 晶振12M

12MH除于12为1MHz,也就是说一秒=10000次机器周期。

10ms=10000次机器周期。

TH0=(65536-10000)/256=0xd8;

TL0=(65536-10000)%256=0xf0;

2. 晶振11.0592M

11.0592MHz除12为921600Hz,就是一秒=921600次机器周期

10ms=9216次机器周期。

TH0=(65536-9216/256=0xdc;

TL0=(65536-9216)%256=0x00;

二. 50MS 定时器初值的计算:

1. 晶振12M

12MH除于12为1MHz,也就是说一秒=10000次机器周期。

50ms=50000次机器周期。

TH0=(65536-10000)/256=0x3c;

TL0=(65536-10000)%256=0xb0;

2. 晶振11.0592M

11.0592MHz除12为921600Hz,就是一秒=921600次机器周期

50ms=46080次机器周期。

TH0=(65536-10000)/256=0x4c;

TL0=(65536-10000)%256=0x00;

用方式1时,bai16位的初值要分解成高8位、低8位,分别du存放到 TH0、TL0。

对256求模,也zhi就是dao除以 256 得到的整数商,这就是高八位。

对256求余,也就是除以 256,得到的余数,这就是低八位。