演示视频
问题小计
- 串口发送数据乱码
- IMU JY60 串口接收
- 车轮测速
- 电机调速
串口发送数据乱码
使用Send_User_Data()数据错误,数据帧输出为0x32;使用HAL_UART_Transmit_DMA()输出正确,数据帧输出为0x55。
解决: 将数组_data_to_sned初始化赋值为0后,结果就正常了。
IMU JY60 串口接收
不适合用DMA串口,因为他是三个数据包,加速度包、角速度包和角度包,不知道其中间间隔。有1个Byte的停止电平,DMA就将认为是两次数据。
解决: 使用串口中断来处理,接收一帧中断处理。
车轮测速
在一些车辆中,右侧车轮的运动方向与左侧车轮相反,因为电机一般是对称倒置安装的。
解决: 为了与左侧车轮的运动方向保持一致,右侧车轮的速度可能被赋予负值。
电机调速
如果电机明显一顿一顿的,如果不是由于频繁切换正反转造成的话,那就是电机调节频率太低。
解决: 由20HZ调节为50HZ