1、背景
因为项目需求,使用树莓派开发一个解调模块。模块要接受上位机的控制指令,完成相应的工作。目前协定树莓派预留rs232接口,所以首先解决pc与树莓派的串口通信问题。
2、工作中用到软件
1、PC端:串口调试助手,vmware,vspd。
2、树莓派:minicom,geany。
3、硬件连接
使用的USB转ttl的电路板,将PC端与树莓派连接起来。PC端连接USB接口,树莓派连接6、8、10 三个引脚。usb转串口电路板的芯片ch340。

4、调试过程及问题
由于没有留存图片只能文字描述
1、硬件连接完成后,运行编写的串口接收程序,打开PC端串口调试助手。程序的功能是,接受数据并显示在终端。结果并没有达到预期效果。PC端的串口调试助手会接受到部分返回的数据,这是不应该的。同时被返回的数据,在树莓派中没有显示出来。比如:PC端发送123456,串口调试助手中会显示16、123456或者1,对应树莓派中显示2345、无显示和23456.
分析:这一步来看问题比较难找到,从硬件和软件两个方面去考虑。硬件方面的问题:电路板坏掉的可能性比较小,因为还能传输数据只是丢数据。再有可能是串口电平需要转换,使用max232 之类的芯片。 再就是树莓派的硬件问题。软件方面:可能是程序写的不对。
2、在pc上使用vmware安装linux系统,使用vspd创建虚拟串口。在虚拟机中运行同样的串口接收程序,发现没有问题。能按照预期运行。
分析:至少说明程序没问题,应用层的问题可以排除。
3、硬件连接完成后。在树莓派中安装minicom,使用PC端的串口调试助手发送数据。minicom没能正确接收数据,依然会丢失数据,会出现无法解释的换行等问题。

最低0.47元/天 解锁文章
2537

被折叠的 条评论
为什么被折叠?



