• V1.0.2 8d5c33236d

    hulk released this 2026-10-02 23:08:29 +08:00 | 6 commits to main since this release

    变更内容

    IIC 驱动(从 gd32e23x_template_cmake_vscode 模板导入)

    • 出错路径改为 i2c_bus_reset() 整线恢复 + 重试(原来仅 STOP + 清标志),总线被从机拉死时可自恢复
    • 新增 _i2c_wait_flag_timeout / _i2c_wait_flag_clear_timeout 带超时辅助函数,超时打印具体卡死的 flag
    • i2c_scan 增加无响应地址的 AERR 标志清除,避免扫描残留错误影响后续通信
    • 新增 i2c_read_raw()(无子地址读取);通用 i2c_write/i2c_read 改为 16 位寄存器地址(DLPC 风格)
    • 保留本工程 100kHz 速率 / #ifdef DEBUG_VERBOSE 风格 / I2C_DEBUG_UART 扫描输出
    • 移除无引用的 8bit/32bit/display 面板便捷函数
    • TMP112 读取路径修正为 i2c_read_16bits(配合 16 位寄存器地址版 i2c_read 的语义变更)

    文档

    • 协议文档修正:温度上报命令由 M3 笔误更正为 M4;补全 M4/M5/M6/M999/M9999 帧格式与回复示例
    • 新增项目 AGENTS.md(工具链、硬件约定、内存布局与开发进度)

    工具链

    • 新增 DAPLink 专用 OpenOCD 烧录配置与 VS Code 任务(绕过 connect_assert_srst 导致的 Cortex-M23 识别失败)

    硬件验证(GD32E230F8 实测)

    命令 功能 结果
    M1/M2 周期上报开/关 通过(~10ms/帧,停止回 ok)
    M3 LDC1612 涡流原始值 通过(~0x01ADBADC@室温,无错误位,稳定)
    M4 TMP112 温度×10000 通过(27.25~30.45°C,随板温变化合理)
    M5 温度补偿涡流值 通过(补偿系数为 0 时≈M3)
    M6 标定数据(涡流+温度) 通过,CRC 校验正确
    M999 / M9999 版本 / 复位 通过(v23.1.0.2)

    固件产物

    文件 用途 烧录/升级地址
    *_UPDATE.bin OTA / Ymodem 升级包(1KB 页对齐) 由 bootloader 经 RS485 Ymodem 接收
    *_BL.bin 整片烧录镜像(Bootloader + APP + 0xEEEE 标志) 0x08000000
    *.bin 裸 APP 固件 0x08002000
    *.hex 裸 APP 固件(HEX) 0x08002000

    Flash 布局:Bootloader 8KB @0x08000000,APP 54KB @0x08002000,校准预留 1KB @0x0800F800,有效标志 0xEEEE @0x0800FFFC。

    注意:M5 温度补偿系数(TEMP_COMP_COEFF_*)当前为 0,待温漂标定后在下个版本填入。

    Downloads