# RoboconNBUT **Repository Path**: Ha-WthorN/robocon-nbut ## Basic Information - **Project Name**: RoboconNBUT - **Description**: Robocon四足机器人 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-05-21 - **Last Updated**: 2024-10-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # stm32f4常用功能库(基于HAL库开发) ## 目的 写这个库的契机是今年省赛发现我们电控的技术缺少传承,老一辈的代码虽然功能强大好用但晦涩难懂不好理解,而且代码风格不行,这加大了学习周期和开发周期,且不利于后续开发和二次开发。 ## 特点 1. 基于Robomaster开发板A型,可简单移植到其他stm32芯片上 2. 涵盖了多种常用的元器件、外设、数学算法 3. 硬件驱动层以stm32f4的HAL库编写,代码简单易懂 4. 裸机和RTOS之间移植只需要稍作修改或不修改 ## 计划 我将整个项目分为几个部分: 1. BSP(板级支持包):该部分提供针对Robomaster开发板A型上的外设的驱动库,包括板上LED,PWM口,配套CAN总线电机通信,24v输出口开关,板上陀螺仪,板上UART通信,2.4G遥控通信,USB接口等。也提供一些与板载功能相关度不大的元器件,比如板外陀螺仪(MPU6050,GY-61),红外(超声波、激光)传感器,舵机,OLED屏等 3. Algorithm(算法):该部分提供一些与硬件无关的纯算法,比如PID,一些滤波方法(卡尔曼滤波等),还有像是傅里叶变换,姿态角解算等这些算法都可以整。不过有很多算法在arm_math库中有,要用的话直接"#include "就完事,想了解更多关于DSP可以访问 4. Middlewares(中间件及其应用):该部分提供一些中间件的解决方案,那些RTOS可以使用CMSIS标准接口,可以方便切换内核而不修改程序,除此之外,还可以使用LWIP(我见过有人用手机自己设计的APP调试stm32),FATFS这些东西 5. Manuals(手册):该部分可以放一些有用的各种手册,方便各位查阅,不过因为stm32资料够多,也不用放太多手册在这里。自己写的教程也可以放在这里 ## 下载必要的软件 1. **git**:用于程序的多人协作 2. **keil**:ARM Cortex-M开发常用IDE 3. *vscode*:功能强大的文本编辑器 4. *STM32CubeMX*:STM32系列芯片的初始化程序生成器,减少初始化时间 ## 使用方法 首先把这个工程克隆下来 ```bash git clone git@gitee.com:zhiyuan-mao/mybsp_for_stm32f427.git ``` 然后可以在文件的根目录下创建一个专门放置工程文件夹的/Project 之后的工程都可以建立在这里面 ## 总结 毫无疑问这是个大工程,需要多人花上多年的时间去完成、维护、完善、迭代这个库,在stm32没有被替代之前,这个库将长期更新。