Evan
发布于 2026-05-31 / 3 阅读
0
0

PWM调光控制

title: PWM调光控制  
date: 2026-05-04T14:23:47+08:00  
lastmod: 2026-05-31T17:03:00+08:00

PWM 调光控制

基于 CC2530 的 Zigbee PWM 调光灯 Router,通过 UART 控制外部 PWM 驱动板实现灯光亮度调节。

硬件特性

  • 主控:CC2530

  • 供电:DC 12V(Router 节点,常供电)

  • UART TX:P0_3,115200bps 8N1,无流控

  • PWM 驱动板通讯协议

    • 帧格式:0xFF 0xFF​ + ID(0x01)​ + LEN(0x05)​ + CMD(0x03)​ + DATA[3]​ + CHECKSUM
    • data 范围 0~1023,负值表示反向旋转
  • 物理开关:P2_2 连接轻触开关,短按 Toggle 灯开关

功能

  • 上电自动组网:Router 节点启动后自动进行 Network Formation + Steering

  • 开关控制:接收 On/Off 命令(ON/OFF/TOGGLE),同步到 PWM 驱动板

  • 亮度调节:接收 Level Control 命令(MoveToLevel / Step)

    • ZCL CurrentLevel(0-254)线性映射到 PWM 数据(0-1023)
    • 实时同步到 PWM 驱动板(PWM 值 < 10 时钳到 10,避免驱动板进入"关"状态)
  • 物理开关:P2_2 轻触开关短按 Toggle 灯状态,触发后立即通知 z2m

  • 状态同步

    • OnOff / CurrentLevel 标记 ACCESS_REPORTABLE,每次值变化触发 BDB 框架自动上报
    • 入网成功 15 秒后自动 JOIN_REPORT,让 z2m 配对完立即看到设备 NV 实际状态
  • 状态持久化:OnOff 和 CurrentLevel 保存到 NV,断电重启后自动恢复

  • 软件版本自动暴露:ApplicationVersion / SWBuildID / DateCode

ZCL Clusters

Cluster 属性
Basic 制造商名、型号、版本、构建信息
Identify IdentifyTime
On/Off OnOff(R/Reportable)
Level Control CurrentLevel(R/Reportable)、RemainingTime

zigbee2mqtt 暴露

  • state -- 开关状态(ON/OFF/TOGGLE)
  • brightness -- 亮度(0-254),内部映射为 0-1023 发送给 PWM 驱动板

硬件图纸

PCB_PCB_iot_board_div1_2026-05-04.pdf

SCH_iot_board_div1_2026-05-04.pdf

固件下载

PwmLight.hex(Router 节点,Flash 237.0 KB / RAM 7.4 KB)


评论