📘 MCU分层架构实战
30章 · 从入门到项目
🎯 友好色系
1
架构思维启蒙:为什么需要分层?从面包板到工业级代码的进化之路。
01.html
· 进化思维
前往第1章
2
分层模型总览:经典三层架构(HAL+OSAL+APP)与五层架构(MCAL+ECUAL+OSAL+Service+APP)的对比。
02.html
· 模型对比
前往第2章
3
硬件抽象层(HAL)设计:寄存器映射、位操作封装、外设驱动接口标准化。
03.html
· HAL设计
前往第3章
4
MCAL层深入:微控制器抽象层,处理时钟、DMA、中断向量等芯片特有资源。
04.html
· MCAL深入
前往第4章
5
ECUAL层设计:板级外设抽象,将LED、按键、传感器等封装为统一接口。
05.html
· ECUAL设计
前往第5章
6
OSAL层设计:操作系统抽象层,实现任务调度、信号量、消息队列的跨RTOS兼容。
06.html
· OSAL设计
前往第6章
7
中间件服务层:协议栈(Modbus/CANopen)、文件系统、GUI引擎的集成与封装。
07.html
· 中间件服务
前往第7章
8
应用层(APP)架构:状态机设计、事件驱动框架、模块间解耦策略。
08.html
· APP架构
前往第8章
9
接口设计原则:头文件规范、回调函数注册、依赖注入在MCU中的实践。
09.html
· 接口原则
前往第9章
10
模块化编译管理:CMake/Makefile分层构建、静态库与动态加载的MCU实现。
10.html
· 编译管理
前往第10章
11
错误处理与日志系统:统一错误码定义、断言机制、环形缓冲区日志。
11.html
· 错误处理
前往第11章
12
配置管理:Kconfig/宏定义/JSON配置文件的MCU适配方案。
12.html
· 配置管理
前往第12章
13
单元测试框架:Ceedling/Unity在MCU分层架构中的测试策略。
13.html
· 单元测试
前往第13章
14
持续集成(CI):GitLab CI/Jenkins自动化构建与静态代码分析。
14.html
· 持续集成
前往第14章
15
低功耗架构设计:电源管理框架、唤醒源管理、功耗状态机。
15.html
· 低功耗
前往第15章
16
安全启动与固件升级:Bootloader分层设计、签名验证、回滚机制。
16.html
· 安全启动
前往第16章
17
通信协议栈分层:物理层、数据链路层、应用层的MCU实现。
17.html
· 协议栈
前往第17章
18
实时性保障:时间片轮转、优先级反转处理、中断延迟优化。
18.html
· 实时性
前往第18章
19
内存管理:静态分配策略、内存池、堆栈使用分析工具。
19.html
· 内存管理
前往第19章
20
代码复用技术:面向对象思想在C语言中的实现(函数指针、结构体封装)。
20.html
· 代码复用
前往第20章
21
版本控制策略:Git Flow在嵌入式项目中的适配、标签管理与发布。
21.html
· 版本控制
前往第21章
22
文档生成:Doxygen注释规范、架构图绘制(Mermaid/PlantUML)。
22.html
· 文档生成
前往第22章
23
代码审查清单:分层架构专项审查要点、常见反模式。
23.html
· 代码审查
前往第23章
24
性能分析:Profiling工具使用、代码尺寸优化、执行时间测量。
24.html
· 性能分析
前往第24章
25
多核/多处理器架构:AMP/SMP模式下的分层挑战与解决方案。
25.html
· 多核架构
前往第25章
26
虚拟化与模拟:QEMU/Proteus仿真环境下的分层验证。
26.html
· 虚拟化
前往第26章
27
行业标准参考:AUTOSAR CP、MISRA C、IEC 61508对分层的要求。
27.html
· 行业标准
前往第27章
28
遗留系统重构:如何将裸机代码逐步迁移到分层架构。
28.html
· 系统重构
前往第28章
29
实战项目一:智能传感器节点(STM32+FreeRTOS+Modbus)。
29.html
· 实战项目一
前往第29章
30
实战项目二:车载T-Box(S32K+uCOS+OTA)。
30.html
· 实战项目二
前往第30章