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

2019-08-11 17:07发布

本帖最后由 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发送给电脑,解析方案是什么?
               


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
zhaolenm
1楼-- · 2019-08-12 11:34
xyl210xyl 发表于 2017-10-25 10:39
直接把不要的数据丢掉咯,你不缓存,数据阻塞了怎么办。数据丢失了怎么办

那都缓存不会数据量太大吗,要怎么解决
xyl210xyl
2楼-- · 2019-08-12 11:43
zhaolenm 发表于 2017-10-25 11:26
那都缓存不会数据量太大吗,要怎么解决

缓存是一边在接收,一边数据又在抛给电脑,问题是为什么要搞这个转发尼,不能电脑直接接收吗
zhaolenm
3楼-- · 2019-08-12 14:32
xyl210xyl 发表于 2017-10-25 12:32
缓存是一边在接收,一边数据又在抛给电脑,问题是为什么要搞这个转发尼,不能电脑直接接收吗

我要用STM32获取多个传感器的数据,其中就有激光雷达
xyl210xyl
4楼-- · 2019-08-12 15:07
本帖最后由 xyl210xyl 于 2017-10-26 15:29 编辑
zhaolenm 发表于 2017-10-25 14:03
我要用STM32获取多个传感器的数据,其中就有激光雷达

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


一秒钟8万个bit
zhaolenm
5楼-- · 2019-08-12 16:29
 精彩回答 2  元偷偷看……
simms01
6楼-- · 2019-08-12 18:53
zhaolenm 发表于 2017-10-28 23:03
波特率115200,不是在这个以下都可以实现传输吗

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

一周热门 更多>