FPGA提升串口波特率、QT提高波特率支持的方法
本文主要讲解FPGA计算串口波特率的方法以及QT5对230400以上波特率的支持方法。
1.FPGA提升串口波特率
1.1确定FPGA串口的模块的时钟
FPGA常用的时钟频率有:25M/50M/100MHz,对应每个时钟周期时间为:40ns/20ns/10ns。对应的支持的波特率理论上限为:100000000/50000000/25000000。需要注意的是,在实际使用当中,是无法达到如此高的波特率的,而且越高的波特率有效传输距离越小,通常115200的有效距离是3-5m,921600是1-2m。
1.2波特率及FPGA每位传输周期的计算方法
已知1s=1000000000ns,假设所需波特率为115200,则每传输1位所需的时间为:1000000000/115200≈8680ns,已知100MHz的时钟下每周期10ns,所以FPGA需要在每868个时钟周期发送一位bit。同理,921600需要108个时钟周期。