问题描述:现打算用定时器来控制数据传输的速率,有点类似数据采集的采样速率,即控制1S内传输多少组数据,而且用到串口,而且C8051F320串口已经使用Timer1作为波特率发生器了,因此定时就得考虑其他定时器了。
C8051F320的定时器:
从这个表可见Timer0和Timer1可用作计数器或定时器,Timer2和Timer3有8位和16位两种模式的自动加载方式,适合用作定时控制。但Timer2和Timer3与C8051F320的USB通信控制有关,因此考虑使用Timer0作为数据传输时间间隔控制用。
时钟源:Timer0和Timer1可有5种时钟源,
SYSCLK,SYSCLK/4,SYSCLK/12,SYSCLK/48,外部晶振时钟/8。Timer2和Timer3的时钟源:SYSCLK,SYSCLK/12,外部晶振时钟/8。
Timer0和Timer1:这两个定时器的工作方式相同。由TL和TH组成16位定时器。Timer0和Timer1的中断使能为IE寄存器的ET0/1位。在TMOD寄存器中的T1M1-T0M0可设置定时器的工作模式。
1. 模式0:13位计数器/定时器
2. 模式1:16位计数器/定时器
3. 模式2:8位自动加载计数器/定时器
4. 模式3:2个8位计数器/定时器(仅Timer0有此功能)