写在前面
这个博客主要记录我的嵌入式软件学习过程、外设实验和项目实践。
目前已经公开的内容主要集中在 STM32、FreeRTOS、常用外设、开发工具、PCB 设计和综合项目。文章既包括 GPIO、中断、定时器、串口、ADC 等基础知识,也包括智能派件 AGV、双通道点光源追踪系统等综合实践。
这些内容是一条仍在持续补充的学习路线,并不表示相关技术已经全部掌握。后续会继续整理 C/C++、数据结构与算法、嵌入式 Linux、OpenMV / 机器视觉,以及更完整的项目调试与复盘。
如果你第一次来到这里,可以根据下面的目录选择基础学习、项目实践或开发工具方向继续阅读。
一、如果你第一次来到这里
1. 想看 STM32 基础学习
GPIO 基础 → GPIO 实训 → 中断理论 → 中断实践 → 定时器基础 → PWM 与输入捕获 → 串口 → ADC → FreeRTOS
完整文章顺序见下方"STM32 与 RTOS 学习路线"。
2. 想看完整项目
3. 想看开发环境和问题排查
VS Code + CMake + C++ → VS Code + Python → Keil5 代码提示问题
二、STM32 与 RTOS 学习路线
1. GPIO:从最基本的输入输出开始
2. 中断:从轮询程序进入事件驱动
3. 定时器、PWM 与输入捕获:为控制周期、波形输出和测频打基础
4. 串口:从通信基础到轮询、中断和 DMA
5. ADC:理解模拟量采集并完成实际验证
6. FreeRTOS:开始接触任务和调度
也可以直接进入:STM32 与 RTOS 专栏。
三、嵌入式项目实战
1. 智能派件 AGV
基于 Cortex-M7、OpenMV 与双频 GNSS 的智能派件 AGV 设计与实现
这是目前博客中最完整的综合项目记录,主要涉及 Cortex-M7 主控、双频 GNSS、IMU、OpenMV、UART 通信、PID 控制、任务调度和多模块联调。文章重点是系统结构、模块协作和实际调试过程,而不是单一外设实验。
2. 双通道点光源追踪系统
该项目将 MCU、光电检测、ADC 采样、PWM 舵机控制、FreeRTOS 和 PCB / 硬件设计结合起来,记录了从传感器采样到执行机构控制的完整过程。
项目文章汇总:嵌入式项目实战专栏。
四、开发工具与工程化
这一部分主要记录开发环境、构建工具和实际开发过程中遇到的问题。
专栏入口:开发工具与工程化。
五、硬件设计与 PCB
这部分是嵌入式开发中与硬件协同有关的拓展内容。
专栏入口:硬件设计与光电感知。
六、正在补齐的能力
下面几部分仍在学习和整理中。在形成连续内容之前,暂时不建立空专栏,也不放置无效链接。
1. C/C++ 与算法
后续准备逐步整理指针与内存、STL、常用数据结构,以及 LeetCode 题目的思路和复杂度分析。
2. 嵌入式 Linux
计划依次记录 Linux 基础、GCC / GDB、Makefile / CMake、文件 IO、进程、线程、网络编程和交叉编译。
3. OpenMV / 机器视觉
准备从 AGV 项目中逐步拆出颜色识别、目标跟踪、OpenMV 与 MCU 通信、视觉控制和实际调试问题。
七、更新说明
这篇文章作为博客总导航持续维护。后续新增的学习记录和项目文章,会逐步补充到对应位置。