单片机通过串口和模块通信,数据串得到数据怎么处理?

我想将标记的数据分别提取再处理应该怎么操作?... 我想将标记的数据分别提取再处理应该怎么操作? 展开
 我来答
迪凯特科技(北京)有限公司 2023-07-28
展开全部
程序逻辑混乱,出现不确定现象,测试结果时好时坏。理顺一下程序思路,保证采集按键、发送、接收数据、显示为一个完整的周期跟后面其他的操作没有关系.你可以联系迪凯特问问,他家挺好的,下边有链接。
深湛且清澈丶小鸥6878
高粉答主

2019-12-29 · 醉心答题,欢迎关注
知道大有可为答主
回答量:1.5万
采纳率:83%
帮助的人:495万
展开全部


我看了半天,我理解如下:

  1. 你用计算机的串口与数据模块通信,数据模块给发过来20 32 33 30 30 20 70 70 6D 0D 0A;

  2. 然后你用计算机把这组数据发给你的单片机,能正常返回32 33 30 30并显示;

  3. 但是直接用模块接单片机不正常!

-------------分析如下:

  1. 串口是交叉通信的,也就是你看看,你的单片机接模块的时候是否用了“交叉线”?2--3、3---2、5---5,也就是说以计算机为基准,你的单片机和模块接的话是“直通线”

  2. 数据模块给你发过来的数据是什么格式很重要!你用串口只能说明你用了16进制观察看到了,并不代表数据模块就是以16进制给你发过来的,有可能是字符或者其他格式!

  3. “偶尔显示正常”可能压根就不正常,属于巧合事件,你先检查一下我说的问题,然后不能解决再追问吧!





迪凯特科技(北京)有限公司
2023-07-28 广告
单片机串口通信数据丢失的原因可能如下:1. 按键通过串口发送对应命令,第一次按按键串口发送的指令正确且能把数据正确的显示出来,在第二次按按键串口发送的指令出现丢失的状况,可能是因为串口通信的波特率设置不正确。2. 如果单片机和外部设备的波特... 点击进入详情页
本回答由迪凯特科技(北京)有限公司提供
lycdl
高粉答主

2019-12-29 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2万
采纳率:94%
帮助的人:4836万
展开全部
这是modbus协议吧,这接收的数据格式是固定的,很容易识别,当收到的数据前三个字节是01 03 20,就从第4个字节开始处理,每4个字节为一组,是浮点数,按浮点数格式恢复成所表示的数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式