 (tag: v1.39) 仅更新hal库函数
一、核心架构调整
1. 寄存器定义分离
将原hal_lks32mc03x.h中的寄存器结构体定义迁移至新文件hal_lks32mc03x_reg.h，使核心头文件结构更清晰
保留各外设寄存器的完整定义，新增HAL_SYS_TypeDef寄存器结构体，完善系统寄存器配置支持
2. 中断接口标准化
重构中断函数命名规则，采用HAL_模块名称_IRQHandler_模块序号_中断序号格式，如HAL_MCPWM_IRQHandler_00
提供简化别名（如HAL_MCPWM_IRQHandler默认映射至HAL_MCPWM_IRQHandler_00），兼顾兼容性与扩展性
明确标注不支持的中断函数，统一映射至空实现（如HAL_CAN_IRQHandler_00_Null），避免编译错误
3. 头文件依赖优化
统一头文件包含顺序，优先包含标准库和基础类型定义
新增hal_lksmcu_irqfun.h，集中管理中断标志位操作函数，分离接口声明与实现
二、外设驱动增强
1. ADC 模块
扩展采样端口定义，明确区分支持 / 不支持的通道，新增内部地（HAL_ADC_PORT_AGND）和基准电压（HAL_ADC_PORT_REF）通道
新增 GPIO 配置接口：HAL_ADC_SetGpioIn()和HAL_ADC_SetGpioTriggerOut()，简化引脚配置流程
修正采样通道寄存器操作，采用位掩码定位方式，提升配置准确性
2. 时钟模块（CLK）
更新主频枚举值，新增 8MHz/9MHz/16MHz/18MHz/32MHz/36MHz/64MHz/72MHz 等 RC 时钟选项
明确标注不支持的外部晶振（XTAL）模式，避免误用
优化时钟配置寄存器操作逻辑，确保频率切换稳定性
3. 比较器模块（CMP）
扩展正端输入通道定义，支持运放输入 / 输出等多源信号接入
新增数字滤波配置函数HAL_CMP_SetDigitalFilter()，支持 0~0xFFFF 范围内的滤波宽度设置
新增 GPIO 配置接口HAL_CMP_SetGpioIn()/HAL_CMP_SetGpioOut()，以及输出状态读取函数HAL_CMP_GetData()
修正通道配置寄存器操作，采用精准位掩码控制
4. DMA 模块
完善 I2C 外设的 DMA 支持，新增HAL_I2C_x参数，统一 DMA 与外设的绑定接口
修正HAL_DMA_SpiRxTx()函数，分离收发数据缓冲区指针，支持全双工通信
优化内存复制函数HAL_DMA_MemCopy()，支持任意类型数据指针输入
5. GPIO 模块
新增功能选择枚举HAL_GPIO_AFx，明确 GPIO 复用功能映射（如 UART/I2C/SPI 等外设引脚复用）
完善引脚模式配置说明，补充各模式下的位操作逻辑（输入使能 / 上拉 / 开漏等）
修正功能配置接口HAL_GPIO_SetAf()，支持按外设类型精准配置复用功能
6. HALL 模块
新增滤波配置接口：HAL_HALL_SetFilter()（MCU 时钟单位）和HAL_HALL_SetFilteruS()（微秒单位）
新增计数控制函数：HAL_HALL_StartCounting()和HAL_HALL_StopCounting()，支持计数启停精细化控制
新增 GPIO 配置函数HAL_HALL_SetGpio()，统一引脚配置流程
7. I2C 模块
拆分 GPIO 配置接口为HAL_I2C_SetGpioScl()和HAL_I2C_SetGpioSda()，明确区分时钟线和数据线
新增总线复位函数HAL_I2C_BusReset()，解决通信异常恢复问题
优化波特率配置逻辑，提升通信稳定性
8. MCPWM 模块
扩展输出端口定义至 6 个通道（HAL_MCPWM_PORT_0~5），支持更多功率器件驱动
新增故障信号配置枚举HAL_MCPWM_FAIL_x，支持 IO 电平、比较器输出等多源故障检测
修正引脚配置函数命名：HAL_MCPWM_SetGpioOut()和HAL_MCPWM_SetGpioFail()，语义更清晰
9. SPI 模块
新增工作模式枚举HAL_SPI_MODE_x，支持主 / 从模式、高低位先发、CPOL/CPHA 组合配置
拆分 GPIO 配置接口，分别配置 CS/MOSI/MISO/CLK 引脚，支持自定义引脚分配
新增HAL_SPI_SetGpioDi()/HAL_SPI_SetGpioDo()，支持直接配置输入 / 输出方向，适配特殊应用场景
10. 定时器模块（TIMER）
新增周期配置接口：HAL_TIMER_SetPeriodCount()/HAL_TIMER_SetPeriodmS()/HAL_TIMER_SetPerioduS()，支持多单位配置
新增 GPIO 配置接口HAL_TIMER_SetGpioIn()/HAL_TIMER_SetGpioOut()，简化定时器引脚复用配置
修正计数器停止逻辑，确保停止时计数器清零
11. 其他模块增强
FLASH：新增字节 / 半字 / 字级读取函数（HAL_FLASH_ReadUint8()等），新增安全参数存储接口，支持数据校验
OPA：扩展增益枚举值，支持更多放大倍数配置，新增HAL_OPA_Out2GpioEnable()等引脚控制函数
TMP：新增 ADC 值转温度的直接接口（HAL_TMP_Adc2Temperature()），无需依赖 ADC 采样流程
TRIM：新增芯片 ID 读取函数HAL_TRIM_ReadId()和 CRC 校验函数HAL_TRIM_ReadIdCrc32()
Wake：修正函数命名（HAL_WAKE_DeepSleepTimeWakeUp()），统一时间单位参数命名为ms
三、接口兼容性处理
1. 向下兼容支持
保留原有核心接口（如HAL_ADC_Enable()/HAL_UART_SetBaud()等），确保旧项目可直接迁移
对重命名的函数提供兼容宏定义，如HAL_WAKE_DeepSleepIoWeak()兼容映射至新函数HAL_WAKE_DeepSleepIoWake()
2. 不支持功能标注
明确标注各模块中不支持的功能（如 QEP 模块的正交编码模式、CAN 外设等）
提供空实现函数，避免链接错误，同时在注释中说明限制条件
四、工具链支持优化
更新静态库文件（hal_lksmcu_lib.lib/libhal_lksmcu_lib.a），适配新接口的实现
新增lks32mc03x_hal.pdf文档，提供完整的 API 说明和使用示例
优化readme.md，补充版本更新说明和问题反馈渠道
 (tag: v1.38, origin/main, origin/HEAD) 该提交修正了多个头文件中的拼写错误和格式问题，包括将`HAL_MCPWM_OUTPUT_STATE_HIGL`和`HAL_MCPWM_DEFAULT_OUTPUT_STATE_HIGL`中的`HIGL`改为`HIGH`，修正了`HAL_MCPWM_OUTPUT_STATE_HIGL_PWM`和`HAL_MCPWM_DEFAULT_OUTPUT_STATE_HIGL_PWM`中的`HIGL`为`HIGH`，更新了`lks32mc03x_user_manual.h`中的日期和版本号，并在多个寄存器定义中添加了`(uint32_t)`类型转换和括号以增强可读性，同时修正了一些位掩码和位定义的格式问题。
 (tag: v1.37) 添加BSD 3-Clause许可证文件和SLA_2025文档，修正HAL层代码中的拼写错误（如FERQ→FREQ），更新用户手册版本至1.62，修复头文件包含路径，并统一频率相关函数的命名规范。
 (tag: v1.36) 修改包括：将`hal_lks32mc03x_weak`相关文件重命名为`hal_lks32mc03x_wake`，更新包含文件，更新用户手册头文件日期至2025-10-27。
 (tag: v1.35) 代码格式化命令修改：从BreakBeforeBraces: Linux改为BreakBeforeBraces: Allman。
 (tag: v1.34) 增加hal库
 (tag: v1.33) 增加hal库 统一代码格式，参考： "clang-format -style={BasedOnStyle: Microsoft, Language: Cpp, UseTab: Never, IndentWidth: 4, TabWidth: 4, ColumnLimit: 0, AccessModifierOffset: -4, NamespaceIndentation: All, FixNamespaceComments: false, BreakBeforeBraces: Linux, AllowShortIfStatementsOnASingleLine: true, AllowShortLoopsOnASingleLine: true, AllowShortBlocksOnASingleLine: true, IndentCaseLabels: true, SortIncludes: false, AlignConsecutiveMacros: AcrossEmptyLines, AlignConsecutiveAssignments: Consecutive}"
 (tag: v1.32) 添加从用户手册生成的头文件，包含所有模块的寄存器定义和位掩码配置。
 (tag: v1.31) 更改`Read_Trim`函数声明：从外部常量指针变为普通函数声明。
 (tag: v1.30) 更新liblks32mc03x_nvr.a和lks32mc03x_nvr.lib二进制文件。
 (tag: v1.29) 删除lks32mc03x_nvr.lib文件，修改多个头文件和源文件的命名及内容，包括ADC、Flash、GPIO等模块的初始化、配置和功能函数，增加复位外设到默认状态的功能，调整部分代码风格。
 (tag: v1.28) 添加了MCPWM_IF0、MCPWM_IF1和MCPWM_EIF的中断标志位定义到lks32mc03x_MCPWM.h。
 (tag: v1.27) 提交添加了三个系统复位函数以复位外设、内部外设和IO到默认状态，并删除了版本历史文件libfunevision_history.txt。
 (tag: v1.26) 删除Read_Trim函数对输入地址的判断
 (tag: v1.25) fix(wake): 休眠时钟切换至HRC时钟
 (tag: v1.24) fix(UART): 固定SYS_CLK_DIV2的数值以免两串口波特率不同时出现冲突
 (tag: v1.23) fix(SYS): 休眠前关闭除WAKE_IRQn以外的其他中断
 (tag: v1.22) fix(SPI): 往SPI_TXDATA寄存器中写数触发SPI传输之前需要先判断CS信号是否为高电平
 (tag: v1.21) fix(DAC): 修改DAC量程对更多芯片版本的适配
 (tag: V1.2) 更正lks32mc03x_MCPWM.c文件中CH3的P和N通道默认电平通道设置相反了，MCPWM_FAIL3的BIT9为CH3P的设置默认电平 BIT8为CH3N的默认电平设置。
 (tag: V1.1) 修复通道错误的问题
 (tag: v1.0) 取消库函数调用bool类型，防止部分用户编译报错
