SOLID 原则在单片机环境下的 C 语言实现示例,结合嵌入式开发常见场景进行详细说明
1. 单一职责原则 (SRP)
定义:一个模块(函数/文件)只负责一个功能。
 示例:传感器数据采集与处理分离
// SensorAdc.h - 仅负责ADC原始数据采集
 typedef struct {
     uint16_t (*ReadRaw)(void);  // 原始数据读取接口
 } SensorAdc;
// SensorProcessor.h - 仅负责数据处理
 typedef struct {
     float (*ConvertToTemperature)(uint16_t adcValue); // ADC转温度
 } SensorProcessor;
// 使用示例
 SensorAdc cAdc = {ADC_ReadRawValue}; 
 SensorProcessor cProcessor = {ADC_ConvertToTemperature};
 uint16_t cRaw = cAdc.ReadRaw();
 float cTemp = cProcessor.ConvertToTemperature(cRaw);
2. 开闭原则 (OCP)
定义:模块对扩展开放,对修改关闭。
 示例:支持多种显示驱动(LED/LCD)的扩展
// DisplayDriver.h - 抽象接口
 typedef struct {
     void (*Init)(void);      // 初始化函数指针
     void (*ShowText)(cons
