》 2023-04-27 02:57 采纳率: 0%
浏览 40
已结题

野火imx6ull开发板在终端内可以正常使用uart串口通信,但在qt项目内通信不正常,qt项目在linux虚拟机中一切正常,什么原因?

本项目是基于野火linux开发板imx6ull的QT项目,在QT5.0环境中使用。项目涉及到使用qtserialport调用串口完成串口接收格式为xx,yy的数据并绘图,效果如下:

img


但是按照linux野火开发板的教程将QT项目下载到开发板中后,除了串口接收并绘图之外功能一切正常,无论串口助手发送什么内容,总是返回同样的值:

img

img


串口发送的数据和在电脑虚拟机linux端用串口发送的数据完全相同,且在野火开发板中用cat命令测试ttymxc2 是可以正常显示串口接收到的信息的 用echo命令测试uart串口,也可以正常在电脑物理机中收到消息。

img


保持上述测试确保uart串口正常后,再运行qt项目,依然无法在qt项目中接收串口的数据,不知道原因出在哪里,求解答。

  • 写回答

3条回答 默认 最新

  • qllaoda 2023-04-27 09:17
    关注

    你的意思是,无论给它发什么,它返回的都是“?board”这样一个字符串?如果这样,我估计程序的串口收发功能还是在运行的,至少部分正常的,但是对数据接收判断出错了,这很可能是程序输出的一条错误提示信息,建议在源码里找一下,在什么情况下会输出一个带”board“字样的返回值,再结合具体报错原因分析。
    我估计和串口的默认工作模式有关,linux虚拟机和开发板,在硬件上毕竟是有区别的。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 5月5日
  • 创建了问题 4月27日