
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
摘要:本文深入探讨有限状态机(FSM)在企业级嵌入式开发中的核心价值与应用方法。文章指出FSM能有效解决工业场景下复杂的状态管理问题,通过"状态-流转规则"的抽象,避免"面条式代码"带来的维护难题。详细讲解了FSM的三阶段生命周期管理(Entry-Action-Exit)、结构体设计方法,并以工业恒温水杯为例演示完整实现流程。最后强调状态划分、异常处理和调度

在嵌入式开发当中,日志是调试排障、程序运行监控的核心工具。但新手常陷入这些困境:用printf裸打日志,调试信息杂乱无章;项目落地时需逐行注释日志,效率极低;日志无等级区分,现场运行时冗余输出占用串口 / 内存资源。本期教大家快速开发一款极简嵌入式日志模块,完全基于标准C实现,无任何第三方依赖,核心设计满足嵌入式开发刚需:单接口调用、日志等级划分、宏独立控制等级开关,能够无缝嵌入stm32等项目中

摘要:本文深入探讨有限状态机(FSM)在企业级嵌入式开发中的核心价值与应用方法。文章指出FSM能有效解决工业场景下复杂的状态管理问题,通过"状态-流转规则"的抽象,避免"面条式代码"带来的维护难题。详细讲解了FSM的三阶段生命周期管理(Entry-Action-Exit)、结构体设计方法,并以工业恒温水杯为例演示完整实现流程。最后强调状态划分、异常处理和调度

讲本章内容之前,首先介绍一下队列,在数据处理和嵌入式开发中,队列是一种核心的先进先出(First in First Out,FIFO)线性数据结构,其核心规则是仅允许在内存的一端执行入队操作、另一端执行出队操作,完美契合 “先到先处理” 的业务需求。队列主要分为普通队列和环形队列两种形式,其中环形队列是对普通队列的优化升级,解决了普通队列的内存浪费和效率问题,也是嵌入式开发中缓冲区设计的主流方案。

本文提出了一种适用于嵌入式开发的软件版本命名规范,采用"主版本号.子版本号.编译日期"的格式(如v1.2.2602281451)。其中主版本号标识架构重大变更,子版本号记录功能新增或核心修改,编译日期段自动生成无需人工维护。文章详细介绍了利用C/C++编译器内置宏__DATE__和__TIME__实现自动版本号生成的完整代码方案,包括日期解析、异常处理和版本字符串拼接等核心逻辑

最后,有不懂的欢迎联系我,因为完整代码包含一些其他封装的函数,为了避免干扰思路,我就摘出来了lora部分 *********总之不懂得留下邮箱或者qq交流。定点模式在我的理解就是可以指定接收方(前提这个接收方是存在的),定点模式规定了数据格式的组成为:前两个字节是目标地址,第三个字节为目标信道,之后为数据包。这个是LoRa设置代码,我在配置LoRa最后一步加入了AT+Z指令,因为我懒得写退出配置模








