这半年有幸得到了一些资金支持,决定尝试用
大疆
的配件做一些有意义的东西。但是真正开始
使用
的时候却遇到了很多问题,
大疆
的产品从硬件到软件方面都有很多让人迷惑的行为,而同时网上的参考资料也很少,这些都让我在前期
使用
的时候摸不着头脑。后期虽然这些问题都得到了解决,但也浪费了大量时间。于是打算把我们
使用
的经历和相关代码做一个分享,以便后续其他人的
使用
。如有错误,希望指正。
一. 硬件部分介绍:
这里我
使用
的是
大疆
提供的
A型
开发板
,
使用
大疆
产品有个缺点便是
大疆
的接口都是配套产品而非通用产品,一旦
使用
了
大疆
的产
芯片型号
STM32
F427IIH6,现在控制芯片和控制方式都清楚了,接下来按照说明手册接好线后就可以开始配置
STM32
CubeMX,
大疆
开发板
A型
,M3508直流无刷电机,配置
STM32
CubeMX,
HAL库
,keil5MDK,C620电调,PID控制,CAN驱动,调参工具,
STM32
CubeMonitor,STMStudio,如果对你有帮助,谢谢你的点赞支持!
DR16
接收机输出的信号为标准的DBUS协议数据,当
遥控器
与接收机建立连接 后,接收机每隔14ms通过DBUS发送一帧18字节数据。数据内容包括左右两个摇杆的数据,左右上角的两个开关拨杆,以及左侧上方的云台俯仰控制拨轮。
大疆
开发板
A 是一款高性能、低功耗的嵌入式开发平台,特别适用于机器人与自动化控制系统的开发。高性能处理器:搭载 ARM Cortex-M 系列处理器,提供强大的计算能力。丰富的接口:包括 I2C、SPI、UART 等多种通信接口,方便与各种传感器和外设连接。易于上手:提供了完善的开发环境和丰富的库函数,适合不同层次的开发者
使用
。强大的社区支持:拥有大量的开发者社区资源,可以获取丰富的开发经验和技术支持。我们将
使用
超声波传感器(如 HC-SR04)检测障碍物,并通过电机控制实现机器人的避障功能。
一. DMA
直接存储器访问(Direct Memory Access,DMA),当需要将外部设备发来的数据存储在存储器中时,如果不
使用
DMA方式则首先需要将外部设备数据先读入CPU中,再由CPU将数据存储到存储器中,如果数据量很大的话,那么将会占用大量的CPU时间,而通过
使用
DMA控制器直接将外部设备数据送入存储器,不需要占用CPU。
STM32
中的许多通讯如USART,SPI,IIC都支持DMA方式进行数据的收发。
二. DBUS协议
遥控器
和
stm32
之间采用DBUS协议进行通讯。DBUS通讯协议和串口
void RemoteDataProcess(uint8_t *pData)
RC_CtrlData.rc.ch0 = ((int16_t)pData[0] | ((int16_t)pData[1] << 8)) & 0x07FF;
RC_CtrlData.rc.ch1 = (((int16_t)pData[1] >
本文主要目的是为了制作
Robo
Master
比赛能量机关的灯条控制,模拟比赛场中大符,搭建出类似场地道具,以供视觉测试
使用
的是
Robo
Master
开发板
A型
,芯片为
STM32
F427IIH6,
使用
的灯条为WS2812B。
采用PWM+DMA控制,
使用
CUBEMX配置底层,keil5编辑烧录代码
实现:一共五片扇叶,每片扇叶均实现流水灯+常亮颜色
参考文章在后面会标记出来