|
如下,STC32G 例程的里的一段程序,
一直沒(méi)看明白,官方寫這個(gè)TM 意指啥? 看下面的引用,似乎是重裝值。 可是為啥用TM呢?,
define Timer0_Reload (65536UL -(MAIN_Fosc / 1000)) //Timer 0 中斷頻率, 1000次/秒,1000個(gè)1ms是1s,10ms中斷的話,1000改成100
#define Baudrate 115200UL //波特率
#define TM (65536 -(MAIN_Fosc/Baudrate/4)) //
。。。。
void UartInit(void)
{
P_SW1 = (P_SW1 & 0x3f) | 0x80; //USART1 switch to, 0x00: P3.0 P3.1, 0x40: P3.6 P3.7, 0x80: P1.6 P1.7, 0xC0: P4.3 P4.4
SCON = (SCON & 0x3f) | 0x40;
T1x12 = 1; //定時(shí)器時(shí)鐘1T模式
S1BRT = 0; //串口1選擇定時(shí)器1為波特率發(fā)生器
TL1 = TM;
TH1 = TM>>8; //
TR1 = 1; //定時(shí)器1開始計(jì)時(shí)
|
|