betaflight多串口环形缓冲区和dma实现原理 Betaflight 串口 UART 深度解析:环形缓冲区与 DMA 实现 本文基于 Betaflight 源码,重点讲解串口系统的环形缓冲区原理和 DMA/中断 两种工作模式。 一、串口系统整体架构 1.1 四层架构 Betaflight 的串口系统采用四层分离架构: 123456789101112131415161718192021222324252627┌──── 2026-08-02 单片机 #stm32 #博客
2026年CCUT电子设计竞赛报告 2026年CCUT电子设计竞赛报告 智能病区物资配送小车(A题) 小车全貌 摘要 此设计以STM32F407为主控模块,完成了包含视觉循迹小车,视觉字母判断,自动路径规划在内的药品搬运小车。整个装置在视觉MaixCam循迹小车的基础上通过JetsonNano计算机判断字母来进行目标识别,通过串口与主控通信,对小车定位。 1.系统硬件方案 本题硬件方案有多种选择,我们的方案只 2026-04-19 单片机 #stm32 #硬件 #比赛 #博客
TI杯2025年全国大学生电子设计竞赛报告 TI杯2025年全国大学生电子设计竞赛报告 简易自行瞄准装置(E题) 摘要 此设计以MSPM0G3507和STM32F407ZGT6两款单片机为主控模块,完成了包含自动循迹小车、二维步进云台、MaixCam视觉识别模块以及激光控制发生器的简易自行瞄准装置。整个装置在自动寻迹小车的基础上再通过MaixCam视觉识别模块识别目标靶的信息来获取对应坐标,然后通过MaixCam视觉模块与STM32F 2025-09-06 单片机 #stm32 #硬件 #比赛 #博客
记录一些git命令 一.简述 最近在开发单片机程序的时候一直都使用文件夹来进行程序的版本管理,而且对版本的描述只有在文件夹名上的修改。 这也就导致了每次增加新功能或者是修复bug的时候根本就记不住做了哪些操作,甚至有时会丢失掉一部分代码,这对代码管理是及其不友好的。 这就要提到一个非常强大的工具就是git。其实我用git用了很久,但是从来没有真正使用到git强大的commit,branch等核心部分,所以从 2025-07-14 其他 #命令行 #GIT
高品质音乐播放器(基于STM32F407) 新年好。 一.简述 在学习stm32f4时,我想要做一个项目来充分发挥f4系列的性能,正巧我对音频与UI比较感兴趣,于是我便选定了音乐播放器这个项目。 首先,我从项目名进行项目特点分析。 1.1 高品质(DAC,解码,WAV) 自然界中的音频是一种波,音源通过推动空气振动来传递能量,最终人耳鼓膜受迫振动转化为电信号传递给大脑。 而描述一个波的物理量就是频率与振幅,电脑如果需要存储高品质 2025-02-27 单片机 > C语言 #stm32 #硬件 #HIFI
使用HEXO和GitHubPage搭建Blog 简述 大部分人印象中的网站常常都遥不可及,但是现在资源丰富的互联网早就已经给了解网站提供了很多信息渠道与免费资源。 如题所言,本文将使用hexo(一个博客框架)与GitHub Page(一个页面托管平台)来搭建一个博客,我也不会去仔细深究网站背后的工作原理,主要一笔带过。 若想搭建博客,就得先搭建一个网站,之后在这个网站框架下再加入新内容,所以本文分四步步, 先使用github来搭建 2024-12-31 网站 #hexo #node #博客
ES9018k2m解码板 ES9018K2M 1.DAC部分 1.1芯片介绍 ES9018K2M是一款ESS公司开发的高性能32位、两声道音频DAC,最高支持384kHz的PCM数据以及DSD-11.2MHz,具有+127dB DNR动态范围,另外,其拥有较低的功耗,所以常在移动设备上应用。 1.2芯片输入 PCM音频数据通过I2S协议输入,若需控制音量等其他功能则通过I2C协议。由于其默认音量为1 2024-12-20 EDA #PCB #EDA #HIFI
STM32F407时钟系统解析 1. STM32F407时钟系统框图 时钟作为一个单片机的脉搏,有必要好好了解一下。 1.1 为什么时钟需要被分为许多频率? 在传统51单片机中,一般只有一个时钟频率,而stm32有多个分频有以下原因: - 减小功耗 - 为了增强抗干扰能力 - 为了给不同外设提供时钟 1.2 F407的时钟来源 LS IRC:低速内部时钟(32Khz 内部RC震荡产生 可提供给:看门狗、R 2024-11-29 单片机 #stm32 #时钟
记录制作的一款全地形小车(暨第一次大学比赛) 1.起始 从进入大学前,我就一直想进入实验室参加各种比赛,最终我进入了学校的电子实验室,开始了我的电子信息学习。 但是,在进入实验室不久,基本只是将51单片机学完,stm32没学完的情况下,就被实验室赋予了第一次任务,参加全地形车比赛。 我与履带车见的第一面 这是我与履带车见的第一面,本来以为还要很久才能用上,没想到这次就要“深入交流了”。 2.构思 既然都使用上履带车了, 2024-11-10 单片机 #硬件 #51单片机 #杂谈 #比赛
node编写命令行工具 1.起因 最近在写博客时要插入图片,受限于网站带宽,不可能使用上兆大小的图片,所以就需要一个程序来处理高质量的jpg,png图片,所以我便编写了一个命令行工具。此处记录如何创建node的命令行工具,并且直接调用。 示例:hwebp -i ./yourdir 2.创建 2.1初始化项目 创建一个文件夹,并使用命令行工具打开(windows上)。 输入npm init -y来初始化 此 2024-11-09 nodejs #命令行