在常规的嵌入式串口调试时,一般速率要求较低,常规最高也只有256000,但是对于FPGA,往往会提出更高的要求,串口的理论最高速率是10Mbps。
实际调试时发现,当串口调试助手速率设置到3M时,串口调试助手发送的数据FPGA已经不能正确接收,FPGA发送的数据,串口调试助手接收正确,当再提高速率后发现,对方发送的数据,另一方是接收不到的,查找原因发现:
普通的串口调试助手在波特率设置大于3M后,输出的数据信号周期与设置的值不相同,本次实测单个bit持续的时间长度如下:
串口调试助手设置波特率 | 示波器测试单个bit持续时间长度 |
100K | 10us |
1M | 1us |
4M | 9us |
10M | 10us |
故3M以下数据收发正常。可以通过硬件收发短接,测试更高速率的串口收发。