# 风信子 RoboMaster 2021 步兵电控代码
<img src="./Docs/rt-thread.png" width="640" alt="系统架构图" />
## 开发环境
- STM32CubeMX 6.2.1
- Keil V5.33
- STM32F4xx_DFP V2.15.0
- STM32CubeF4 V1.26.1
## 文件目录结构
```
├───Core
│ ├───Inc // 头文件
│ └───Src // 源文件
├───Docs // 文档
├───Drivers // HAL 库与 CMSIS 库
│ ├───CMSIS
│ └───STM32F4xx_HAL_Driver
├───Hardware // 外设封装
├───Lib // 常用函数
├───MDK-ARM // MDK 工程
├───Middlewares
│ └───Third_Party
│ └───RealThread_RTOS_RT-Thread // RT-Thread Nano
├───RT-Thread // RT-Thread 配置文件
└───Thread // 逻辑线程
```
## 系统架构
<img src="./Docs/系统架构图.png" width="640" alt="系统架构图" />
## 硬件框图
<img src="./Docs/硬件框图.png" width="860" alt="系统架构图" />
## 系统流程说明
利用 RT-Thread 的 [自动初始化机制](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/basic/basic?id=rt-thread-%e8%87%aa%e5%8a%a8%e5%88%9d%e5%a7%8b%e5%8c%96%e6%9c%ba%e5%88%b6),对芯片外设进行初始化。然后在 `main` 函数中对逻辑线程初始化。
在每个逻辑线程初始化时,会初始化对应的机构,并启动操作系统提供的定时器进行 **闭环控制**;待云台初始化结束后进入线程循环,使用 **事件集** 进行同步。
由于闭环控制由定时器进行,逻辑线程仅需通过全局变量(如:`chassis_behavior`,`gimbal_behavior`)设置期望值,定时器就会控制对应机构到期望值。从而实现 **逻辑与控制分离**。
## Roadmap
- 利用操作系统,优化线程间消息传递,避免使用全局变量而导致数据竞争
- 优化代码结构
## Licence
Apache License 2.0
没有合适的资源?快使用搜索试试~ 我知道了~
成都信息工程大学风信子战队RoboMaster2021赛季步兵电控代码。.zip
共181个文件
h:98个
c:65个
md:4个
需积分: 5 0 下载量 25 浏览量
2023-10-23
10:30:23
上传
评论
收藏 1.23MB ZIP 举报
温馨提示
matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行!
资源推荐
资源详情
资源评论
收起资源包目录
成都信息工程大学风信子战队RoboMaster2021赛季步兵电控代码。.zip (181个子文件)
系统架构图.ai 315KB
stm32f4xx_hal_tim.c 236KB
stm32f4xx_hal_rcc_ex.c 152KB
stm32f4xx_hal_uart.c 128KB
stm32f4xx_hal_spi.c 121KB
stm32f4xx_hal_can.c 79KB
stm32f4xx_hal_tim_ex.c 79KB
ipc.c 61KB
stm32f4xx_hal_flash_ex.c 49KB
stm32f4xx_hal_rcc.c 42KB
stm32f4xx_hal_dma.c 39KB
cmd.c 33KB
kservice.c 33KB
system_stm32f4xx.c 25KB
shell.c 24KB
stm32f4xx_hal_flash.c 24KB
stm32f4xx_hal_pwr_ex.c 22KB
thread.c 22KB
mem.c 20KB
stm32f4xx_hal_pwr.c 20KB
timer.c 19KB
stm32f4xx_hal.c 19KB
stm32f4xx_hal_gpio.c 18KB
stm32f4xx_hal_cortex.c 18KB
bsp_imu.c 18KB
stm32f4xx_hal_exti.c 15KB
object.c 14KB
msh.c 14KB
scheduler.c 12KB
cpuport.c 12KB
usart.c 11KB
stm32f4xx_hal_dma_ex.c 10KB
referee.c 9KB
can.c 9KB
tim.c 7KB
stm32f4xx_it.c 7KB
main.c 7KB
idle.c 7KB
crc.c 7KB
gimbal.c 7KB
UI.c 6KB
stm32f4xx_hal_flash_ramfunc.c 6KB
components.c 6KB
chassis.c 5KB
chassis_thread.c 5KB
gimbal_thread.c 4KB
shoot.c 4KB
dmalib.c 4KB
stm32f4xx_hal_timebase_tim.c 4KB
gpio.c 3KB
spi.c 3KB
board.c 3KB
pid.c 3KB
irq.c 3KB
clock.c 3KB
user_lib.c 3KB
stm32f4xx_hal_msp.c 2KB
shoot_thread.c 2KB
dr16.c 2KB
supercap.c 2KB
dma.c 2KB
cpuusage.c 2KB
referee_thread.c 2KB
rc_thread.c 973B
buzzer.c 772B
wattmeter.c 326B
.clang-format 438B
infantry_2021_STM32F427IIHx.dbgconf 3KB
.gitignore 968B
stm32f427xx.h 1.37MB
stm32f4xx_hal_rcc_ex.h 423KB
stm32_hal_legacy.h 203KB
core_cm33.h 169KB
core_armv8mml.h 162KB
core_cm7.h 142KB
core_cm4.h 119KB
stm32f4xx_hal_tim.h 118KB
core_cm3.h 107KB
core_sc300.h 106KB
core_cm23.h 100KB
core_armv8mbl.h 94KB
stm32f4xx_hal_gpio_ex.h 79KB
stm32f4xx_hal_rcc.h 72KB
stm32f4xx_hal_flash_ex.h 63KB
cmsis_gcc.h 59KB
cmsis_armclang.h 53KB
core_cm0plus.h 48KB
core_sc000.h 45KB
stm32f4xx_hal_uart.h 43KB
stm32f4xx_hal_can.h 42KB
core_cm1.h 41KB
core_cm0.h 40KB
rtdef.h 38KB
stm32f4xx_hal_dma.h 37KB
stm32f4xx_hal_spi.h 32KB
cmsis_iccarm.h 27KB
cmsis_armcc.h 27KB
stm32f4xx_hal_conf.h 19KB
stm32f4xx_hal_cortex.h 17KB
stm32f4xx_hal_tim_ex.h 16KB
共 181 条
- 1
- 2
资源评论
天天501
- 粉丝: 622
- 资源: 5905
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功