MCS-51单片机定时器/计数器的简单结构图:
8051单片机的两个定时器T0和T1分别都由两个特殊功能寄存器组成;T0由特殊功能寄存器TH0和TL0构成,而T1则是由TH1和TL1构成;
8051单片机设计了两个8位的特殊功能寄存器来控制定时器/计数器的工作状态;这两个特殊功能寄存器分别是TMOD和TCON;它俩都在特殊功能寄存器区;
定时器时间的设定
- 在12M的晶振下,每秒(s)可产生1M(10^6 us)个机器周期。
- 50ms就需要50×1000 us × 1us(1机器周期)个机器周期 = 50000。
- 这样的话,50ms定时操作需要50000个机器周期,1个机器周期=1us,所以需要50000次计数操作。
- 定时器在方式1工作,是16位计数器,最大值为65536(2^16),也就是能进行最大65536次计数。
- 为了计数器定时器工作,需要预先填充定时器初值(初值=定时器计数最大计数次数 - 所需定时计数次数)。