首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于串口波特率自定义有关问题

2012-03-19 
关于串口波特率自定义问题由于要使用串口来跟踪DSP芯片的消息内容,需要用到串口来将消息上传到PC机中让相

关于串口波特率自定义问题
由于要使用串口来跟踪DSP芯片的消息内容,
需要用到串口来将消息上传到PC机中让相应的软件读取,
现在由于消息量比较大,1S/309600bits,差不多30K左右,
采用115200的波特率无法接收完整消息,
但是采用最大的256000的波特率,似乎ARM无法支持,只能是
115200的2倍,即230400波特率,但是在我改了之后,ARM也改了相应的
波特率,却无法接收到数据,甚至也无法下发数据,因为对上传的数据时先要下传
些参数进行设置的。
查阅了很多,那么在PC机上,是否是只能选择MSDN上列出的哪几个串口波特率,而无法改用
自定义的波特率,即便该波特率应该也是可以的?
即是从原理上来说,波特率是在双方均可以支持的情况下是可以自定义的?


[解决办法]
计算机可能根本就不能扶持那么大的波特率,好象现在的大多数计算机最大支持波特率是128000,因此,你恐怕只能用128000波特率进行通信.
想知道计算机最大支持波特率,可以在"设备管理器"选择"串口"的属性里的"端口设置",看看最大可以设成多少波特率.
至于采用115200的波特率无法接收完整消息,这恐怕是配合问题,不能说是谁的问题,你先在计算机上测试上位机程序(把串口的2脚和3脚短上),就采用128000,等上位机收发没问题后再和DSP下位机通信.
也可以在计算机上用串口助手测试,如果串口助手也收不全数据,就说明是下位机的程序发送有问题,这时就可以专查下位机程序的问题.
调下位机程序时也可以先用串口助手帮助进行调试.等上位机和下位机都单独调试完成后,再联调,这是调通信程序的一般步骤,也是行之有效的步骤
另外,不能随便改成计算机没有的波特率,否则可能通信不上或通信不可靠.因为计算机提供的几个波特率是经过计算误差最小的,你改后计算机或不能识别,或误差增大到不能通信

热点排行