简体中文
简体中文
English
注册
登录
简体中文
简体中文
English
注册
登录
语言
简体中文
简体中文
English
注册
登录

TuyaOS中联网单品框架 DP点数据如何解析?

更新时间2024-03-29 07:06:32
Tuyaos 联网单品开发方式DP点需要开发者在SDK中解析,步骤如下:

1、注册DP数据下发回调函数

Tuya OS将DP(功能点)点分为object和RAW两类,除了RAW类型都会进入object类型回调中
  • dev_obj_dp_cb:通知开发者有 obj 类型 DP 指令下发。
  • dev_raw_dp_cb:通知开发者有 raw 类型 DP 指令下发。
  • 对象类型(Object)
    • 布尔型:bool
      非真即假的二值型变量。例如开关功能,开/关。
    • 数值型:value
      适用于可线性调节类型的数据。例如温度调节,温度范围 20-40℃。
    • 枚举型:enum
      自定义的有限集合值。例如工作档位,低档/中档/高档。
    • 故障型:bitmap
      用于多状态的显示,一般是专门用于显示和统计故障的功能。
    • 字符型:string
      以字符串形式传输的功能,一般用于较复杂功能,最大 255 个字节。
  • 透传类型(Raw)
    以 Hex 格式(十六进制)传输的功能,一般用于较复杂功能。

    2、处理DP数据

  • DP点的数据结构如下:
    typedefstruct {
        /** dp id */
    BYTE_T dpid;
        /** dp type, see DP_PROP_TP_E */
    DP_PROP_TP_E type;
        /** dp value, see TY_OBJ_DP_VALUE_U */
    TY_OBJ_DP_VALUE_U value;
        /** dp happen time. if 0, mean now */
    UINT_T time_stamp;
    } TY_OBJ_DP_S;
    其中value又将数据分为5中类型,分别对应value类型,枚举类型,string类型,布尔类型和bitmap(故障)类型。
    不同的搭配数据取对应的数据类型即可,tuyaos_demo_quickstart已经做出了示例。

    点击获取服务和帮助

    帮助中心