Bootloader · 启动加载器 30章

代码固化实战 配色
什么是Bootloader 嵌入式系统作用 常见方案对比
CPU复位第一条指令 中断向量表 启动模式选择 启动介质
链接脚本(.lds) ROM/RAM/Stack/Heap 符号表与重定位
ARM/Thumb指令集 Reset_Handler 设置堆栈指针SP 跳转main函数
HSE/HSI/PLL 时钟树配置 HAL库初始化 低功耗时钟切换
SDRAM/DDR时序 Flash控制器配置 Cache与MMU设置
UART协议基础 轮询/中断模式 printf重定向 波特率自适应
读/写/擦除 磨损均衡 分区管理 写保护与安全区域
SD协议(SPI/SDIO) eMMC分区管理 FAT32移植
Page/Block/Plane ECC校验 坏块管理BBT
描述符/端点 MSC类 DFU协议
MAC与PHY LwIP移植 TFTP实现 PXE/NetBoot
SPI协议时序 W25Q64操作 XIP内存映射
I2C协议基础 EEPROM读写时序 多设备地址冲突
IWDG/WWDG 安全启动链 RSA/ECDSA签名
AES/RSA SHA-256 加密加载解密流程
LZSS/LZMA 解压缩代码编写 压缩固件加载
A/B分区策略 版本号管理 回滚机制 故障恢复
自定义升级协议 YModem实现 HTTP/HTTPS远程
跳转到App 参数传递 共享内存区域
JTAG/SWD调试 串口打印调试 LED指示灯 HardFault定位
启动时间优化 代码大小优化 内存占用优化
AMP/SMP启动 核间通信Mailbox 从核启动代码
FreeRTOS启动流程 任务创建与调度 运行RTOS考量
单元测试Unity/CMock 集成测试 压力测试 边界条件测试
电源掉电保护 CRC32/MD5校验 看门狗喂狗策略 状态机设计
BOOT0/BOOT1配置 系统存储器Bootloader 自定义Bootloader
ROM/第二级Bootloader 分区表配置 OTA升级
启动设备eMMC/SD/NAND IVT与DCD U-Boot移植
需求分析/架构设计 代码实现/测试报告 课程总结与展望
🍎 橙·蓝·暖阳 · 30章完整目录