Files
DLD154Pro/docs/devlog.md
T

3.1 KiB
Raw Blame History

DLD154Pro 开发日志

MCU: CH591R (RISC-V, BLE) @60MHz | 线圈通道: 1路 | 调试口: RS485 / BLE


2026-07-21 — 项目初始化:从 DLD110SV4 复制基线 + 按硬件资源文档调整 IO

背景

DLD154Pro 是 DLD110SV4 的硬件升级版(同 MCU CH591R),核心变更:

  • 继电器 双路→单路(删 RLY2
  • 删除拨码开关(灵敏度改由小程序设置)
  • 线圈调频 两级→一级(删 PA13 FLEVEL_L
  • 新增 RS485 接口(PA14/PA15/PA13,协议待定)
  • 新增光耦输入(PB10,逻辑待定)
  • 指示灯从单色→双色(LEDA 绿 + LEDB 红呼吸灯)
  • DEBUG UART0 被 RS485 占用,删除全部

仓库

IO 宏重定义

引脚 旧(DLD110SV4) 新(DLD154Pro)
PA8 RLY1 (存在) RLY1 (存在,不变)
PB23 RLY2 (功能/脉冲) LEDB (红色呼吸灯)
PA12 FLEVEL_H (33nF) FLEVEL (33nF,一级)
PA13 FLEVEL_L (10nF) UART0_RE (RS485 方向)
PA14 KEY_SA1 / DEBUG_TX UART0_TX (RS485)
PA15 KEY_SA2 / DEBUG_RX UART0_RX (RS485)
PB10 - IN_1 (光耦输入)
PB22 LEDA (绿色) LEDA (绿色,不变)

删除项

  • RLY2_ON/OFF 宏及全部 RLY2 输出逻辑
  • KEY_SA1/KEY_SA2 宏及 poll_sens_key() 函数
  • FLEVEL_L_LOW/HIGH, FLEVEL_H_LOW/HIGH → 改为 FLEVEL_LOW/HIGH
  • g_flag_output, g_xn_counter 全局变量
  • DEBUG UART0 初始化 (gpio_uart_init#ifdef DEBUG 块)
  • Main_Circulation#ifdef DEBUG PRINT 块
  • TMR1_ISR 中 _cnt / g_flag_output DEBUG 定时器
  • TMR0_ISR 中 g_xn_counter DEBUG 计数器
  • para_store_init() 中频率四档 switch → 双档 if/else

新增/预留

  • RS485 引脚宏: RS485_TX_PIN, RS485_RX_PIN, RS485_RE_PIN, RS485_RE_TX(), RS485_RE_RX()(仅初始化引脚,协议待定)
  • 光耦输入宏: OPT_IN1(仅初始化 PB10 输入上拉,逻辑待定)
  • LEDB 宏: LEDB_ON/OFFPB23,低电平有效)
  • g_freq_sens = 2 默认最高灵敏度(取代 poll_sens_key 拨码逻辑)

继电器输出简化

模式 旧 (双继电器) 新 (单继电器)
case 0: 存在输出 RLY1 跟随 VD, RLY2 跟随 VD RLY1 跟随 VD
case 1: 进入脉冲 RLY2=存在, RLY1=进入脉冲 RLY1=进入脉冲
case 2: 离开脉冲 RLY2=存在, RLY1=离开脉冲 RLY1=离开脉冲
default RLY2=存在 RLY1=存在

保留(协议兼容)

  • storage.hLoop_ACS_Info.relay2_cng/relay2_state 字段保留,默认值=0
  • dbn_ble_srv.c:468 上报字节 relay2 位自动为 0(字段初始化为 0 后无写入)

待办

  • RS485 通信协议定义 + UART0 中断/收发实现
  • 光耦输入逻辑(与其他检测器联动 / 综合判断)
  • IAP/OTA 项目文件中的 DLD110S 引用更新(592OnlyUpdateApp_*
  • .mrs/ 工作区文件清理(大量 DLD110S 历史快照)