通过设置三个与波特率有关的寄存器,即波特率整数 UxBR1、UxBR0、和波特率修整寄存器UxMCTL,使用以下公式计算波特率控制参数:
波特率参数(UxBR0,UxBR1)=波特率时钟源频率/所需波特率 。 (结果取整数部分)
例如:波特率时钟源频率=8MHz,所需波特率=115200,那么波特率参数UxBR0,UxBR1就是8000KHz/115.2KHz=69.444444444,取整后为69,小数部分0.444444444作为修整寄存器中的参数,使用如下公式计算:
波特率修整参数(UxMCTL)=8 x 小数部分 (结果取整数部分)
那么,应该是8 x 0.444444444=3.5,那么这里可以取3或4,这里取4 。因此,需要4个脉冲插补位,在UxMCTL寄存器中,任意选择4位后,UxMCTL=0x55。注意,尽量将插补脉冲分散放置到UxMCTL8个位中。
至此,串口波特率参数设置完成。