常见问题

更新时间2020-11-24T09:01:25Z

mcu-sdk移植问题icon-link

编译问题icon-link

  • :如果使用IAR或keil等编译器编译出现如下错误提示:

    编译错误:declaration may not appear after executable statement in block

    :编译器选项选择"C99 Mode"。

sdk-串口调试logicon-link

  • :SDK上的串口调试信息未输出?

    :查看MCU SDK《设置调试信息输出》介绍,是否有打开UART_DEBUG_ENABLE宏定义输出,是否有重新定义printf。

调试相关问题icon-link

  • :未收到模组的uart信息?

    :(1)检测硬件接线是否正确。

    (2)串口波特率是否设置为115200。

    (3)mcu是否能收到WiFi模组的串口信息,模组上电后会下发信息,比如读取mcu版本号、心跳包等。

  • :向WiFi模组发送指令,无任何响应?

    :(1)确保WIFI模组有上电,且供电流足够,WIFI模组启动瞬间需800mA左右的电流。

    (2)若是调用SDK的请求接口,确保有正常使用,详细参考MCU SDK接口的使用。

    (3)确保有重新定义sdk uart发送接口。

  • :如何给wifi模组发送请求指令?

    :SDK中已经封装了所需的请求接口,只需直接调用,参考lds_wifi_uart_handle.h函数定义。

  • 问:设备状态变化时,如何上报属性状态?

    答:调用notify接口可以直接上报状态,调用函数“LdsUartCmdAttrNotify”

    例子:如下以onoff控制为例子,控制并上报开关状态为1:

    `void example_ctrl_onoff(void)`
    `{` 
    `	xt_attr_t new_attr;` 
    
    `	new_attr.id = ATTR_ONOFF;`
    
    `	new_attr.type = DATA_TYPE_INT;` 
    
    `	new_attr.len = 4,` 
    
    `	new_attr.value.valueint = 1;` 
    
    `	// update device attribute status` 
    
    `	LdsDevAttrUpdate(&new_attr, 1, 1);` 
    
    `	// notify device attribute to arnoo cloud` 
    
    `	LdsUartCmdAttrNotify(&new_attr, 1, 1);` 
    `}`
    

属性相关问题icon-link

  • :如何理解EP概念?

    :(1)EP:EndPoint,代表多个节点意思。

    (2)比如是一盏风扇灯,则风扇和灯都有开关属性onoff,通过定义风扇为ep=1,灯定义为ep=2,当下发onoff属性控制时,可以通过ep值判断是开光风扇还是开关灯,或者当ep=0xff时,代表总开关。

  • 问:如何知道设备都有什么控制属性?

    答:参考SDK代码:lds_arnoo_config.c/lds_arnoo_config.h

    设备属性定义参考:外接MCU串口二进制协议

    定义了属性类型,属性个数,ep个数

    例子:以下定义:有两个属性,ep为1、2、3的节点都有ONOFF属性,ep为1、2的节点有DIMMING。

    const xt_dev_attr_t c_dev_attr_list[DEV_ATTR_COUNT] = {
    
      {ATTR_ONOFF,  (RW_READ_MASK | RW_WRITE_MASK | RW_REPORT_MASK),  DATA_TYPE_INT, {1,2,3}},
    
      {ATTR_DIMMING, (RW_READ_MASK | RW_WRITE_MASK | RW_REPORT_MASK),  DATA_TYPE_INT, {1,2}},
    
    };
    
拷贝此章节链接
Copyright © 2024 LEEDARSON GROUP All Right Reserved.
VERSION: 3.17.0.kGpBp3e