时钟周期
晶振时间为11.0592M,周期就为1/11059200
机器周期
单片机完成一个操作的最短时间,51系列一个机器周期为12个时钟周期
定时器
内部有一个寄存器,它开始计数后,这个寄存器的值每经过一个机器周期就会自动加1
51单片机的定时器的寄存器
TH0/TL0用于T0 TH1/TL1用于T1
主要记住
TR0 定时器0运行控制位,软件置位/清零来进行启动/停止定时器
TF0定时器溢出的标志,发生溢出时,硬件置1,需要用软件清零或者进入定时器中断时硬件清零
硬件置1或者清零,是指一旦符合条件,单片机将自动完成动作;软件置1或者清零,是指必须用程序去完成这个动作
外部中断相关
定时器的工作模式的选择
工作模式为1的 TH和TL组成的16位模式
TL加到255时候,TL清零TH加1,到TL255 TL255的时候再加1就会溢出。
(即组成65535)
定时器的应用
1、设置特殊功能寄存器TMOD,配置好工作模式
2、设置计数寄存器TH0和TL0的初值
3、设置TCON,通过TR0=1来让定时器开始计数
4、判断TCON寄存器的TF0位,监测定时器的溢出情况
(溢出后需要从新定义初值)
定义0.02秒的例子
X*12/11059200=0.02,得到x=18432
65536-18432=47104(0XB800)
故TH0=0XB8,TL0=0X00
这个例子中最多定义71ms
想要更长的时间可以使用溢出计数