之前用GD32F105RBT6的串口1跟2G模块串**互,115200波特率下,OK。 最新开发4G的模块,我把闲置的串口2(GD的索引从0开始),作为打印口和接收PC端下发字节(作为AT指令转发给4G模块),发现发送字节超过10来个之后,某1个位置特别容易丢失1个字符,比如
AT+MIPOPEN=1,,"lvben5d.gicp.net",59754,0 我发这个包,从接收内存区查看,总是丢失 net后面的"号。调试了好多天都连接不上TCP。
我把波特率降低到57600,就OK。 我外部8MHZ晶振,不可能导致这个问题,而且即便是内部RC 1%的精度,也足够保证115200这个波特率的运行。遇到这个问题,建议大家使用GD串口2的时候,注意下,看会不会遇到跟我一样的问题。
截止当前,我在项目中使用过GD32F130C8T6的串口0和1 GD32F105RBT6的串口1 没遇到115200波特率会丢字节的行为。
以及GD32F103RBT6的串口0 串口1 都是115200波特率,全部顺利。
目前发现:GD32F105RBT6的串口2 115200波特率会丢字节 已经跟GD官网FAE交流过,下一步打算将板卡邮寄过去,我的示波器刚好坏了。。
|