串口初始化第一步,配置波特率,波特率是和时钟相关的,因此首先要配置时钟,时钟的配置参见上一篇博客。stm8s主时钟设置
如果在串口初始化中,如果串口时钟没有打开,请在主时钟配置中打开串口时钟。
配置波特率,stm8s的波特率,时钟,波特率寄存器值的计算相比avr和51又是巨大的进步,stm8s算波特率寄存器值只要Fmaster/波特率就可以了,不需要加加减减。
但是在写入寄存器时需要注意。
一,先写BBR2,再写BBR1。
二,BBR2写的是高四位和低四位,BBR1是中间八位,例如,Fmaster = 8 mhz,波特率1200,求得BBR寄存器值为8000000/1200 = 0x1A0A,那么写入寄存器的值就是BBR2=1A,BBR1=A0,顺序和数字都不能错。