利用LabVIEW的串口通信,为什么上位机发送一个字符串,而单片机只接收到前两个字符?

2024-12-13 06:37:13
推荐回答(5个)
回答1:

我做过labvIEW的编程,我做的是USB通讯,首先你可以用串口调试助手发送一串字符,看下位机是否接收正常,如果不正常,那么就一定是你的程序出错;如果一切正常,那么你再看labvIEW的发送命令程序,因为发送的时候应该是字符串格式(看你的描述),那么你要确定字符串的长度,如果有buffer的话还要确定它的长度是否正常,很可能是长度出错;然后加大长度的情况下,再试一下;因为我这儿没有你所说的硬件,不好帮你调试的,所以你有什么问题再留言,再讨论吧

回答2:

首先要确定是单片机接收有问题还是发送的问题。
由于我以前也遇到过这个情况,建议你在单片机程序中不要直接将接收到的数据直接发送,而是先将接收到的数据存在某个数组中,再将这个数组发送。估计可以解决问题

回答3:

既然能收到表示通讯应该是正常的。
先确定你的labview程序 在使用串口 --- 自发自收状态时。 是否能正常收发所有数据
如果正常,那么就是下位机,单片机程序的问题。

回答4:

多半是你 单片机 程序 问题

建议 去 我的领地 5d6d 的 proteus 论坛看看

那里有很多 单片机仿真实例,包括仿真图 和 源码
搜 5d6d 和 proteus 2个关键词

回答5:

查一下单片机晶振频率和波特率设置对不对。11.0592和12M的晶振波特率设置是不一样的