# Small quadcopter drone **Repository Path**: olyic/small-quadcopter-drone ## Basic Information - **Project Name**: Small quadcopter drone - **Description**: No description available - **Primary Language**: C - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-29 - **Last Updated**: 2025-06-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Small quadcopter drone #### 介绍 - 该项目包含三部分分别是上位机,遥控器,无人机,实现上位机对无人机的控制和状态监测,遥控器对无人机的控制,无人机对命令的响应实现定高等模式。 - 上位机负责发送参数配置和无人机参数解析和检测以及姿态显示,**实现基于混合触发机制的UART数据缓冲处理框架**,结合**高水位触发(High Watermark Triggering)**与**定时器机制**,根据数据流速率自适应选择处理方式。当数据量高于阈值(如缓冲区使用率超90%)时立即触发处理,避免数据丢失;在低速或间歇性数据流场景下,采用定时器周期性处理,降低CPU占用。该设计兼顾数据突发与稀疏分布场景,提升了系统稳定性与资源使用效率。 - 遥控器负责飞行器的油门,飞行方向的控制。主控使用stm32f401,NRF2401作为无线通信芯片,与上位机使用uart协议进行通信。 - 飞行器实现平衡,通信质量的计算。主控使用stm32f401,NRF2401作为无线通信芯片。 #### 平台架构 1. 上位机:windows平台下使用qt框架(V-5.16) 2. 遥控器:windows平台下使用MDK5 3. 无人机:windows平台下使用vscode搭建stm32开发环境(armgcc作为编译器,cmake作为构建平台) #### 技术栈 1. 上位机:qt,c++,c,uart通信协议,双缓冲队列,散列表,状态机,自适应处理算法 2. 遥控器:stm32,c,中断,iic,ADC,uart 3. 无人机:stm32,c,中断,pwm,DMA,中断向量表 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)