智能家居HiLinkSDK集成开发调测指导Word格式.docx

上传人:b****5 文档编号:18075995 上传时间:2022-12-13 格式:DOCX 页数:24 大小:89.30KB
下载 相关 举报
智能家居HiLinkSDK集成开发调测指导Word格式.docx_第1页
第1页 / 共24页
智能家居HiLinkSDK集成开发调测指导Word格式.docx_第2页
第2页 / 共24页
智能家居HiLinkSDK集成开发调测指导Word格式.docx_第3页
第3页 / 共24页
智能家居HiLinkSDK集成开发调测指导Word格式.docx_第4页
第4页 / 共24页
智能家居HiLinkSDK集成开发调测指导Word格式.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

智能家居HiLinkSDK集成开发调测指导Word格式.docx

《智能家居HiLinkSDK集成开发调测指导Word格式.docx》由会员分享,可在线阅读,更多相关《智能家居HiLinkSDK集成开发调测指导Word格式.docx(24页珍藏版)》请在冰豆网上搜索。

智能家居HiLinkSDK集成开发调测指导Word格式.docx

地址:

深圳市龙岗区坂田华为总部办公楼邮编:

518129

网址:

客户服务邮箱:

support@

1概述

本文档用于说明HiLinkSDK开发包提供的所有API接口,本文中罗列的部分接口对于开发者来说不一定是必须使用的。

API接口的头文件在HiLinkSDK开发包的如下位置:

hilinksdk

|-include

hilink.h

HiLinkSDK静态库主头文件,包含HiLinkSDK入口函数和时间获取函数

hilink_device.h

产品功能适配头文件,包含:

●设备信息、设备模型定义

●待实现设备服务控制、查询响应函数声明

●供调用设备服务状态上报函数声明

hilink_ota.h

OTA功能定义头文件

hilink_osadapter.h

HiLinkSDK操作系统适配头文件,包含系统时间、Flash读写、字符串操作、内存操作等系统函数适配接口声明

hilink_log.h

HiLinkSDK系统提供的日志打印接口函数声明头文件

hilink_typedef.h

系统类型定义头文件

2HiLinkSDK主要API说明

2.1HiLinkSDK入口函数

/*****************************************************************************

功能描述:

HiLinkSDK主流程入口函数,启动HiLink配网及互联互通功能

输入参数:

void

返回参数:

0主流程启动成功,其他值主流程启动失败

*****************************************************************************/

inthilink_main(void);

2.2获取设备状态函数

获取设备在线状态

0offline,1online

inthilink_get_devstatus(void);

2.3设置恢复出厂状态

调用该接口完成设备恢复出厂设置,该接口会设置恢复出厂标志,在标志

设置成功之后会清理掉ssid账号信息,并重启模组

输入参数:

void

0恢复出厂成功,-1恢复出厂失败

inthilink_restore_factory_settings(void);

2.4获取用户配置

获取存储在Flash的用户配置信息

len用户需要获取的配置信息长度

输出参数:

config用户获取的配置信息缓存

0获取成功,-1获取失败

注意事项:

(1)config的内存分配和初始化由调用者完成;

(2)用户可获取的配置信息最大长度为32字节.

intHilinkGetUserConfig(unsignedshortlen,char*config);

2.5保存用户配置

保存用户配置信息到flash

config用户配置信息

len用户配置信息长度

0保存成功,-1保存失败

(1)信息写入为覆盖更新,每次写入前会清空旧的数据;

(2)用户可存储的配置信息最大长度为32字节.

intHilinkSetUserConfig(char*config,unsignedshortlen);

2.6获取本地时间

时间同步模块获取本地日期信息

p_time_info本地日期信息

inthilink_get_local_time_info(pstHILINK_TIME_INFOp_time_info);

2.7获取UTC时间信息

时间同步模块获取当前UTC时间和时区信息

p_time_msutc时间,单位ms

time_zone时区信息字符串,posixtz格式

len时区信息字符串长度

inthilink_get_utc_time_ms(unsignedlonglong*p_time_ms,char*time_zone,unsignedintlen);

2.8获取UTC日期信息

时间同步模块获取当前UTC日期信息

p_time_infoUTC日期信息

inthilink_get_utc_time_info(pstHILINK_TIME_INFOp_time_info);

2.9转换毫秒时间为日期

时间同步模块转换ms为日期

time_msms为单位的时间

p_time_info转换后的日期信息

0转换成功,-1转换失败

inthilink_convert_time(unsignedlonglongtime_ms,pstHILINK_TIME_INFOp_time_info);

3日志打印API说明

3.1判断日志是否打印

判断某级别日志是否打印

level日志级别(参见hilink_log.h中debug_level_t定义)

1可以打印,0不可打印

boollog_is_print(debug_level_tlevel);

3.2设置某级别日志可以打印

设置某级别日志可以打印

voidset_log_level(debug_level_tlevel);

3.3日志打印

日志打印

format格式化字符

…可变参数

inthilink_printf(constchar*format,...);

4OS适配层API说明

4.1获取主机IP

获取远端主机IP

hostname远端主机名称/url

ip_list存放远端主机ip地址列表的数组

num存放远端主机ip地址列表的数组的大小

0成功,其他值失败

inthilink_gethostbyname(char*hostname,charip_list[][40],intnum);

4.2获取系统时间

获取系统时间

ms系统时间,以毫秒为单位

在esp8266上该时间最小单位为10ms

inthilink_gettime(unsignedlong*ms);

4.3计算字符串长度

计算字符串长度

src字符串

字符串长度值

src字符串须保证以'

\0'

结尾

unsignedinthilink_strlen(constchar*src);

4.4字符串比较

字符串内容比较

str1字符串1

str2字符串2

len比较长度

0字符串相等,>

0str1>

str2,<

0str1<

str2

inthilink_strncmp(constchar*str1,constchar*str2,unsignedintlen);

4.5查找字符串中的字符

在字符串str中查找字符ch

str字符串

ch待查找的字符

NULL未找到该字符,其他值该字符地址

char*hilink_strchr(char*str,intch);

4.6逆向查找字符串中的字符

在字符串str中逆向查找字符ch

char*hilink_strrchr(constchar*str,charch);

4.7将字符串转换为整数

将字符串转换为整数

转换后的整数

inthilink_atoi(constchar*str);

4.8短整形主机字节序转网络字节序

短整形主机字节序转网络字节序

hs主机字节序数

网络字节序数

unsignedshorthilink_htons(unsignedshorths);

4.9短整形网络字节序转主机字节序

短整形网络字节序转主机字节序

hs网络字节序数

主机字节序数

unsignedshorthilink_ntohs(unsignedshorths);

4.10解析JSON结构体

将字符串形式的json数据解析为json结构体类型的数据

value字符串形式的json数据

NULL解析失败,其他值指向json结构体的指针

void*hilink_constchar*value);

4.11JSON解析字符串值

获取json结构体中的字符串值

objectjson结构体指针

name需要获取的item的名字

len获取的item的value的长度

NULL获取失败,其他值指向该值的指针

char*hilink_void*object,char*name,unsignedint*len);

4.12JSON解析数据值

获取json结构体中的数据值

value获取的item的value

0获取成功,其他值获取失败

inthilink_void*object,char*name,int*value);

4.13获取JSON结构体对象

获取json结构体对象

NULL获取失败,其他值指向该结构体的指针

void*hilink_void*object,constchar*name);

4.14获取JSON数组元素

获取json数组元素

arrayjson数组

item要获取的jsonitem

void*hilink_void*array,intitem);

4.15获取JSON数组大小

数组大小

inthilink_void*array);

4.16删除JSON对象

删除json对象结构体

object结构体对象指针

voidhilink_void*object);

4.17清空JSON对象的字符串数据

清零json对象结构体中的字符串数据

****************************************

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1