中颖的1612A 也是带EUART和EUART1两个串口:
//用定时器1作为系统波特率发生器
T2CON &= ~((1<<5)|(1<<4));
SCON |=0x50; //SM0 SM1 SM2 REN TB8 RB8 TI RI
PCON |= 0X80; //波特率加倍
TMOD |= 0X20;
TCON1 |= 0X08; //系统时钟作为定时器1的时钟源
TH1 = 247;
TL1 = 247;
TR1 = 1;
ES0 = 1;
P3_1 |= 1;
这样配置可以到115200波特率。 先选择定时器1为波特率发生器,定时器的时钟一定要选择系统时钟(这个一定要配置,默认为系统时钟的12分频)
波特率计算公式:
TH1 = TL1 = 256-(16588880/16/115200) = 247.
波特率要设置倍频,SMOD设置为1. |