第六章主要讲解的是定时器和计数器的相关知识,这些组件在微处理器,尤其是像51系列这样的单片机中有着广泛的应用。51系列单片机内部包含两个16位定时器/计数器T0和T1,而52系列则额外增加了一个T2。这些定时器/计数器的主要功能包括定时、计数以及生成串行口的波特率。
定时器/计数器的基本结构包括8位的THx(高位)和TLx(低位)寄存器,它们一起构成了16位的计数器。TCON是控制寄存器,用于启动、停止定时器以及处理中断请求;TMOD是工作方式寄存器,用于设定定时器的工作模式和功能。
定时器的工作原理分为定时和计数两种模式。在定时模式下,定时器使用内部振荡信号的12分频作为计数基础,因此计数速率与晶振频率有关。例如,如果晶振主频为12MHz,那么计数周期为1μs。在计数模式下,定时器通过外部引脚接收计数脉冲,要求输入脉冲宽度大于两个机器周期,且通常在下降沿时进行加1计数。
定时器的控制涉及到两个8位寄存器TMOD和TCON。TMOD中的M1和M0位用于选择四种不同的工作模式,如模式0、1、2和3,每种模式有不同的计数方式和溢出处理。而TCON中的TFx位表示定时器溢出标志,TRx位用于启动或停止定时器,ITx位则用于门控,控制外部信号是否能启动计数。
总结起来,定时器/计数器是单片机系统中的关键组成部分,它们提供了灵活的定时和计数功能,可以通过编程设定不同的工作模式以适应各种应用需求,如延时、波特率产生、事件计数等。掌握定时器的使用对于理解和开发基于单片机的系统至关重要。