论坛元老
- 积分
- 7206
- 金钱
- 7206
- 注册时间
- 2016-11-30
- 在线时间
- 622 小时
|
30金钱
本帖最后由 lvkanger 于 2017-4-6 16:32 编辑
最近一直在研究上海思岚科技的SLAMWARE SDP Mini开发套件,核心部件有三个部分,RPLIDAR激光雷达扫描器,SLAMWARE CORE算法核心模块,Breakout开发板基于STM32F103VET6。
Breakout开发板的源码是开放的,与CORE的串口通信是通过DMA进行收发的。
由于要移植到我自己的系统上,所以串口通信是通过串口中断来进行收发的。
其中有一条指令0x21设置系统参数,我只要一回复slamware_config中的内容,CORE就认为有问题开始与我进行重新同步。若我回复不支持该条命令,就能顺利驱动系统跑起来。
但是运动控制又不能实现SDP Mini那样的控制效果。
我也测试了源码,对0x21这条命令进行修改,回复不支持该条命令。那么SDP Mini的控制效果就跟我的系统一样了。可见这条命令很关键。
但是我就不明白了,为啥我别的命令都没有问题,就这条命令正确回复就有问题。slamware_config直接用的是源码中的.c文件。
有没有搞过的大神,求帮忙啊!感激不尽!!!
还有就是SLAMTEC的技术支持太不给力了,只能邮件支持,连个电话都不给!!!差评!!!
|
最佳答案
查看完整内容[请看2#楼]
解决了,问题原因是回复CORE的指令太慢了,导致CORE认为断线。把串口接收改为DMA接收完美解决问题!
|