大微K
业精于勤,行成于思
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
大型量产固件的工程实践(十一):健壮的网络状态机——链路监控与指数退避重连
到这里,《大型量产固件的工程实践》专栏就全部完成了。回顾整个专栏,一条主线贯穿始终——用"抽象"和"状态"对抗"复杂度"架构抽象(分层 / HAL / 配置管理 / 多芯片抽象)↓工程质量(技术债 / 错误码 / 日志)↓运行时设计(RTOS / 状态机 / 网络状态机)↓驱动技巧(GPIO 模拟 SPI / 位级控制)让固件在规模增长和故障频发的现实中,依然可控、可维护、可自愈。希望这个专栏能帮你在固件开发中少踩一些坑。原创 2026-08-25 09:12:44 · 3 阅读 · 0 评论 -
大型量产固件的工程实践(十):嵌入式状态机设计——多阶段初始化与断点续传
本文是《大型量产固件的工程实践》专栏第 10 篇。上一篇:第 9 篇实战《GPIO 模拟 SPI 实现源码与使用范例》 | 下一篇:第 11 篇《健壮的网络状态机》原创 2026-08-25 09:12:17 · 2 阅读 · 0 评论 -
大型量产固件的工程实践(九·实战):GPIO 模拟 SPI 实现源码与使用范例
本文提供了一个完整的GPIO模拟SPI驱动实现方案,具有以下核心特点: 架构设计 采用驱动层与协议层分离设计 纯硬件操作层,不涉及具体芯片协议 功能特性 支持任意位宽传输(包括非字节对齐数据) 完整支持SPI四种时序模式(CPOL/CPHA组合) 可配置位序(MSB/LSB优先) 可调传输速率(通过延时参数) 实现优化 使用函数指针消除位操作分支 全部位操作用static inline实现 提供标准化的接口定义 该驱动已做通用化处理,开发者只需适配底层GPIO和延时函数即可直接使用。配套提供了数据结构定义、原创 2026-08-25 09:11:44 · 3 阅读 · 0 评论 -
大型量产固件的工程实践(九):GPIO 模拟 SPI 驱动设计
本文介绍了GPIO模拟SPI驱动的通用设计方案,重点解决硬件SPI资源不足、非字节对齐地址和特殊时序需求等问题。关键设计包括:1)驱动层与协议层分离,确保驱动通用性;2)支持1-32bit任意位宽传输;3)通过4个static inline函数实现CPOL/CPHA四种时序模式,采用函数指针分派避免循环分支;4)电平推导简化CPOL处理。该设计实现了高度可复用的bit-bang SPI驱动,协议层处理芯片特定命令格式,驱动层专注时序控制,换芯片时无需修改底层驱动。原创 2026-08-25 09:11:10 · 1 阅读 · 0 评论 -
大型量产固件的工程实践(八):多款同类型芯片驱动的统一抽象
本文是《大型量产固件的工程实践》专栏第 8 篇。上一篇:第 7 篇实战《日志打印实现源码与使用范例》 | 下一篇:第 9 篇《GPIO 模拟 SPI 驱动设计》原创 2026-08-25 09:10:38 · 1 阅读 · 0 评论 -
大型量产固件的工程实践(七·实战):分级日志系统实现源码与使用范例
本文是《大型量产固件的工程实践》专栏第 7 篇《嵌入式调试日志系统设计》的实战姊妹篇。上一篇:第 7 篇《嵌入式调试日志系统设计》 | 下一篇:第 8 篇《多款同类型芯片驱动的统一抽象》本文给出一个:分级 + 分模块过滤 + 循环缓冲 + 多通道输出。源码已做通用化处理(标准类型 + 通用命名),可直接使用。原创 2026-08-25 09:10:02 · 1 阅读 · 0 评论 -
大型量产固件的工程实践(七):嵌入式调试日志系统设计
本文是《大型量产固件的工程实践》专栏第 7 篇。上一篇:第 6 篇《嵌入式错误码体系设计》 | 下一篇:第 7 篇实战《日志打印实现源码与使用范例》本文讲,配套的完整实现见姊妹篇《07b:日志打印实现源码与使用范例》。两篇命名与机制完全一致。原创 2026-08-25 09:09:10 · 2 阅读 · 0 评论 -
大型量产固件的工程实践(六):嵌入式错误码体系设计
本文是《大型量产固件的工程实践》专栏第 6 篇。上一篇:第 5 篇《自研轻量 RTOS 内核设计》 | 下一篇:第 7 篇《嵌入式调试日志系统设计》原创 2026-08-25 09:08:33 · 2 阅读 · 0 评论 -
大型量产固件的工程实践(五):自研轻量 RTOS 内核设计
本文是《大型量产固件的工程实践》专栏第 5 篇。上一篇:第 4 篇《从量产固件看技术债治理》 | 下一篇:第 6 篇《嵌入式错误码体系设计》原创 2026-08-25 09:06:42 · 1 阅读 · 0 评论 -
大型量产固件的工程实践(四):从量产固件看技术债治理
本文探讨了大型量产固件中的技术债问题及其治理方法。文章首先分析了技术债产生的三大现实原因:赶进度需求、多平台叠加复杂度和维护惯性。接着列举了六种典型技术债形态:主文件重复、巨型文件、条件编译地狱、全局变量泛滥、驱动重复以及死代码垃圾文件,指出其危害并提供具体治理方案。文章揭示了技术债的共性根源——复制粘贴,强调治理关键在于消灭重复、抽取公共抽象。在治理原则上,主张严格增量式重构,小步验证以确保稳定性。最后提出技术债的度量框架和优先级评估方法,强调治理目标不是清零债务,而是控制风险。本文为嵌入式固件开发者提供原创 2026-08-24 14:49:55 · 4 阅读 · 0 评论 -
大型量产固件的工程实践(三):多产品线固件配置管理
本文是《大型量产固件的工程实践》专栏第 3 篇。上一篇:第 2 篇《硬件抽象层 HAL + 多平台 BSP 适配》 | 下一篇:第 4 篇《从量产固件看技术债治理》原创 2026-08-24 14:48:07 · 5 阅读 · 0 评论 -
大型量产固件的工程实践(二):硬件抽象层 HAL + 多平台 BSP 适配
本文介绍了大型量产固件中硬件抽象层(HAL)与多平台BSP适配的工程实践。HAL的核心思想是通过统一接口访问硬件,避免上层直接操作寄存器,实现硬件平台切换时只需重写BSP层而无需修改应用代码。文章详细阐述了HAL接口设计原则(按功能域组织、表达意图而非寄存器、使用枚举替代魔法数字)和实现方法,并通过LED控制示例展示了多平台适配方案。HAL+BSP架构将稳定的接口定义与平台相关的实现分离,有效解决了硬件变更带来的维护问题。这种分层设计是应对多硬件平台的核心方法,为后续多产品线固件配置管理奠定了基础。原创 2026-08-24 14:45:22 · 3 阅读 · 0 评论 -
大型量产固件的工程实践(一):分层架构设计
本文是《大型量产固件的工程实践》专栏第 1 篇。下一篇:第 2 篇《硬件抽象层 HAL + 多平台 BSP 适配》原创 2026-08-24 14:42:25 · 3 阅读 · 0 评论
分享