Skip to content

WIOTA同步终端扫频

概述

这里主要介绍终端(IoTE)进行频点扫描,再用扫描的频点进行数据发送的过程。

DEMO所在工程目录路径:PS/app/test/wiota_freq_manager_demo.c

默认该DEMO为关闭状态,可通过menuconfig命令打开,具体过程为:

1. 在wiota_dev_customer工程根目录下点击鼠标右键执行ConEmu Here打开命令窗口
2. 执行menuconfig命令进到编译配置界面
3. 依次选择 wiota PSenable wiota test funcwiota sync iote scan freq test
4. 退出并保存

成功打开后,在rtconfig.h里有如下宏定义:

#define WIOTA_TEST_DEMO
#define WIOTA_FREQ_MANAGER_DEMO

同时,AP侧也需要开启对应的模式,以配合测试,具体过程为:

1. 在wiota_ap_customer工程根目录下点击鼠标右键执行ConEmu Here打开命令窗口
2. 执行menuconfig命令进到编译配置界面
3. 依次选择 wiota PSenable wiota test func
4. 退出并保存

成功打开后,在rtconfig.h里有如下宏定义:

#define WIOTA_TEST_DEMO

DEMO流程

主流程

主流程

如图所示,DEMO主要包括两部分,频点扫描发送数据到AP。通过频点扫描得到频点以及频点数量,然后指定频点连接对应的AP,成功后进行WIoTa数据的发送。当状态发生错误时,将使用下一个频点再进行WIoTa数据的发送。

下面再对频点扫描和发送数据到AP作详细说明。

频点扫描

主流程

如图所示,待扫描频点,可以从静态数据中先获取,也可以自行指定,默认是指定0,50,100,150,200等频点。将频点列表作为终端(IoTE)的API接口的输入参数,该API将返回能同步的频点和数量,并且得到的频点按照信号强度,从强到弱进行了排序,使用时可优先使用最前面的频点。

使用的API接口列表

序号 函数名 功能
1. uc_wiota_init() WIoTa协议栈的初始化
2. uc_wiota_run() 启动WIoTa协议栈
3. uc_wiota_scan_freq() 扫频
4. uc_wiota_exit() 关闭WIoTa协议栈

发送数据到AP

主流程

如图所示,发送数据到AP需要重新对WIoTa进行初始化(包括设置频点等),连接AP并成功后,根据当前状态情况,若没有发生错误状态,就对AP进行循环数据发送,当产生错误状态时,结束发送并退出WIoTa协议栈。

使用的API接口列表

序号 函数名 功能
1. uc_wiota_init() WIoTa协议栈的初始化
2. uc_wiota_set_freq_info() 设置频点
3. uc_wiota_run() 启动WIoTa协议栈
4. uc_wiota_register_recv_data_callback() 被动接收数据接口注册
5. uc_wiota_connect() 连接同步ap
6. uc_wiota_get_state() 查询WIoTa当前状态
7. uc_wiota_reset_stats() WIoTa统计信息重置
8. uc_wiota_get_all_stats() WIoTa统计信息获取
9. uc_wiota_send_data() 发送数据
10. uc_wiota_exit() 关闭WIoTa协议栈
Back to top