打印

大疆面试题——串口接收

[复制链接]
1345|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
看图片,本人想了好久,感觉协议有问题。
最理想的情况是将缓冲区的数据读到数组,数组的前俩字节是AA68表示上位机命令,否则就是透传。
但是接收到的数据是11AA681122,单片机就蒙蔽了对吧。

串口接收.png (37.62 KB )

串口接收上位机&&透传

串口接收上位机&&透传

使用特权

评论回复

相关帖子

沙发
cjseng| | 2019-9-6 14:24 | 只看该作者
读到AA68就认为是头,之后该怎么处理就怎么处理。

使用特权

评论回复
板凳
yulanhao|  楼主 | 2019-9-6 18:35 | 只看该作者
cjseng 发表于 2019-9-6 14:24
读到AA68就认为是头,之后该怎么处理就怎么处理。

问题是你先判帧头才能读啊,不是读了再判

使用特权

评论回复
地板
cjseng| | 2019-9-6 22:11 | 只看该作者
yulanhao 发表于 2019-9-6 18:35
问题是你先判帧头才能读啊,不是读了再判

你怎么会有这么奇怪的想法?
一个个遍历过来啊,先读到AA,如果下一个是68,就算发现了头。

使用特权

评论回复
5
又东风| | 2019-9-7 22:48 | 只看该作者
透传是没有数据包格式吗?如果没有,需要判断是设置命令还是透传先遍历头AA68,有的话,根据命令包校验,校验正确是设置命令,错误就是透传。那这样是不是就没法判断透传数据正确与否。没了解透传是什么意思,是不是大量数据传输,应该也有校验。一般收到包,判断头,不是头直接扔了,应答错误,让上位机重发。三次错误就判串口通讯故障。是不是大疆透传用于显示摄像头数据,那应该是不需要校验,降低了速度。不知道分析是否有误,有误请指正。

使用特权

评论回复
6
huizai1106| | 2019-9-12 14:24 | 只看该作者
你的数据长度都是不固定的吗?

使用特权

评论回复
7
ayb_ice| | 2019-9-18 15:53 | 只看该作者
明显的大部分时间是透传,只是上电的一段时间可能非透传而已

使用特权

评论回复
8
lcxyf1234| | 2020-2-22 19:19 | 只看该作者
我~~~~~~~~~~~~~~~ 真~~~~~~~~~~ 挫~~~~~~~~~

使用特权

评论回复
发新帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

7

帖子

0

粉丝