Timer1模块是由两个可读写的8 位寄存器(TMR1H 和 TMR1L)组成的 16 位定时器/ 计数器。TMR1寄存器对(TMR1H:TMR1L)从 0000h 递加到 FFFFh 后,计满回零到 0000h。假如答应Timer1中止,则溢出时会发生Timer1 中止。该中止可经过置位/清零TMR1IE位来答应/制止。
Timer1 能够有三种作业形式:
• 同步定时器形式
• 同步计数器形式
• 异步计数器形式
Timer1 作业在定时器形式
将 TMR1CS (T1CON<1>) 清 0,挑选 TMR1 作业在定时器形式。在这种形式下,定时器的输入时钟是内部时钟频率的4 分频(FOSC/4)。因为内部时钟总是同步的,所以同步操控位 T1SYNC(T1CON<2>)此刻不起作用。
Timer1 作业在同步计数器形式
将 TMR1CS(T1CON<1>) 置 1,挑选 TMR1 作业在计数器形式。在这种形式下,计数器在引脚T1OSI (T1OSCEN置1时)或T1OSO/T1CK (T1OSCEN清0时)输入时钟的每个上升沿递加。假如 T1SYNC 位清 0,那么外部时钟输入与内部相位时钟同步,同步是在预分频器后完结的。预分频器是一个异步脉动计数器。在同步计数器形式下,当作业于休眠方法时,即便运用的是外部时钟,Timer1 也不会递加,因为同步电路已被封闭,可是预分频器持续递加。当 Timer1 作业在同步计数器形式时,外部输入的时钟信号有必要满意必定的要求,这首要是因为要与内部相位时钟(TOSC) 同步。同步后,Timer1 的实践递加计数与外部时钟沿之间会发生必定的延时。当预分频器的分频比为1:1 时,外部输入时钟和预分频器的输出相同。T1CKI与内部相位时钟的同步是经过在相邻的两个Tosc内部相位时钟下对预分频器的输出进行采样来完成的。因而,要求T1CKI引脚上的信号高、低电平别离至少保2Tosc ( 加上一小段 RC 延时 )。 当预分频器的分频比是除 1:1 外的其它状况时,外部输入时钟信号要先经过异步脉动计数器预分频器的分频,而使预分频器的输出对称。为了使外部时钟满意采样要求,有必要将脉动计数器考虑
在内。因而,要求 T1CKI 引脚上的信号至少坚持4Tosc(加上一小段 RC延时)供预分频器分频。此外,T1CKI引脚上的时钟信号还有必要满意凹凸电平的最小脉宽要求。
Timer1 作业在异步计数器形式
当T1SYNC (T1CON<2>)方位1时,外部时钟输入就不同步。Timer1 持续进行异步于内部相位时钟的递加计数。在休眠状态下,Timer1将持续运转,并在计满溢出时发生中止,唤醒处理器。但在软件中应特别注意对Timer1的读写。异步计数器能在器材休眠时作业,因而Timer1 可用于完成一个实时时钟。在异步计数器形式时,Timer1不能用作捕捉器或比较器的作业时基。
Timer1 振动器
在 T1OSI ( 放大器输入 ) 和 T1OSO ( 放大器输出 ) 引脚之间内接有晶体振动器电路,经过将T1OSCEN操控位 (T1CON<3>)置位使能该电路。该振动器是一个低功耗的振动器,频率可达200kHz。它在休眠状态下能够持续作业。一般主张的运用频率为32kHz,这是一个发生实时时钟的抱负频率。表12-1所示为不同频率的晶体振动器所需的外接电容。Timer1的振动器是一种低速低功耗(LP)振动器,用户应在 Timer1 的振动器刚开始作业时,使
用必定的软件延时,以保证振动器先可靠起振。
表 12-1: Timer1振动器的电容器挑选表
注: 这使得计数器在休眠形式下依然持续作业(递加) ,因而Timer1 可用于发生一个实时时钟。
振动类型
经测验的晶体:
32.768 kHz Epson C-001R32.768K-A ± 20 PPM
100 kHz Epson C-2 100.00 KC-P ± 20 PPM
200 kHz STD XTL 200.000 kHz ± 20 PPM
注 1:添加%&&&&&%容量可进步振动器的稳定性,可是一起也延长了振动器的起振时刻。
2:因为每个谐振器/ 晶体均有其本身的特性,用户应向谐振器/晶体厂商咨询恰当的外部元件值
跟Timer1有关的寄存器