OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3827|回复: 15

串口数据解析,大神帮忙呀!

[复制链接]

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
发表于 2017-10-24 22:16:53 | 显示全部楼层 |阅读模式
本帖最后由 zhaolenm 于 2017-10-24 22:18 编辑

  我在用STM32F103的串口2获取激光雷达的数据,并通过串口1发送给计算机,目前实现了从串口接收一个字节的数据后就发送一个字节的数据,不缓存。但是不能够解析成我想要的数据,大神们帮帮忙!!!
   激光雷达每秒获取2000个采样点的数据,每个采样点有五个字节组成,每次激光雷达传递数据时先要发送起始应答报文(A5 5A 05 00 00 40 81),然后才将2000个采样点(每个采样点5个字节)的数据发送过来,我要从这每个采用点的5个字节中解析出角度和距离信息,程序怎么解决??
每个采样点5个字节包括:
1.png
     s:扫描起始标志位; c:校验位,永远为1; angle_q6[14:0]:角度信息,0-360度,使用定点小数表示; distance_q2[15:0]:距离信息,使用定点小数表示。
   具体收到的数据如图
                                     2.png
  我只要角度和距离信息,怎么去掉不要的位数和字节,并实现解析完成后通过STM32串口1发送给电脑,解析方案是什么?
               


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
82
金钱
82
注册时间
2014-8-5
在线时间
12 小时
发表于 2017-10-24 23:42:51 | 显示全部楼层
用共同体,直接建立一个5个byte的大小的共同体,这5个字节数据解析,按照协议去设定。
回复 支持 反对

使用道具 举报

8

主题

206

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1010
金钱
1010
注册时间
2016-4-6
在线时间
234 小时
发表于 2017-10-25 08:45:39 | 显示全部楼层
帮顶。。。。
回复 支持 反对

使用道具 举报

233

主题

961

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1814
金钱
1814
注册时间
2011-10-9
在线时间
230 小时
发表于 2017-10-25 09:51:44 | 显示全部楼层
你确定是每秒?   那就是1秒要接收  头文件+2000*5byte字节的数据 还要解释......来得及么
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2017-10-25 10:39:04 | 显示全部楼层
直接把不要的数据丢掉咯,你不缓存,数据阻塞了怎么办。数据丢失了怎么办
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-25 11:23:35 | 显示全部楼层
simms01 发表于 2017-10-25 09:51
你确定是每秒?   那就是1秒要接收  头文件+2000*5byte字节的数据 还要解释......来得及么

是每秒,意思是用STM32无法解决这个问题吗
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-25 11:24:04 | 显示全部楼层
hui6209822 发表于 2017-10-24 23:42
用共同体,直接建立一个5个byte的大小的共同体,这5个字节数据解析,按照协议去设定。

这样不会数据阻塞吗大神
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-25 11:26:59 | 显示全部楼层
xyl210xyl 发表于 2017-10-25 10:39
直接把不要的数据丢掉咯,你不缓存,数据阻塞了怎么办。数据丢失了怎么办

那都缓存不会数据量太大吗,要怎么解决
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2017-10-25 12:32:56 | 显示全部楼层
zhaolenm 发表于 2017-10-25 11:26
那都缓存不会数据量太大吗,要怎么解决

缓存是一边在接收,一边数据又在抛给电脑,问题是为什么要搞这个转发尼,不能电脑直接接收吗
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-25 14:03:52 | 显示全部楼层
xyl210xyl 发表于 2017-10-25 12:32
缓存是一边在接收,一边数据又在抛给电脑,问题是为什么要搞这个转发尼,不能电脑直接接收吗

我要用STM32获取多个传感器的数据,其中就有激光雷达
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2017-10-26 15:25:34 | 显示全部楼层
本帖最后由 xyl210xyl 于 2017-10-26 15:29 编辑
zhaolenm 发表于 2017-10-25 14:03
我要用STM32获取多个传感器的数据,其中就有激光雷达

一秒钟2000条数据,没条数据5个字节,这波特率要多大,这速率你算算,传输都来不及啊


一秒钟8万个bit
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-28 23:03:14 | 显示全部楼层
xyl210xyl 发表于 2017-10-26 15:25
一秒钟2000条数据,没条数据5个字节,这波特率要多大,这速率你算算,传输都来不及啊

波特率115200,不是在这个以下都可以实现传输吗
回复 支持 反对

使用道具 举报

233

主题

961

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1814
金钱
1814
注册时间
2011-10-9
在线时间
230 小时
发表于 2017-10-30 09:25:34 | 显示全部楼层
zhaolenm 发表于 2017-10-28 23:03
波特率115200,不是在这个以下都可以实现传输吗

传输是够 但是处理估计时间不够 因为你的数据是一直来的 不停的吧?
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2017-10-30 10:27:24 | 显示全部楼层
zhaolenm 发表于 2017-10-28 23:03
波特率115200,不是在这个以下都可以实现传输吗

处理时间应该也够,但是我建议不要把解析放在单片机上做,把数据直接丢给上位机。单片机只充当hub的功能。
这数据很考验usb串口芯片的稳定性了。
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-30 13:38:21 | 显示全部楼层
simms01 发表于 2017-10-30 09:25
传输是够 但是处理估计时间不够 因为你的数据是一直来的 不停的吧?

好的,非常感谢
回复 支持 反对

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2017-10-18
在线时间
14 小时
 楼主| 发表于 2017-10-30 13:39:00 | 显示全部楼层
xyl210xyl 发表于 2017-10-30 10:27
处理时间应该也够,但是我建议不要把解析放在单片机上做,把数据直接丢给上位机。单片机只充当hub的功能 ...

好的,非常感谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 23:57

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表