作者:niu
在RVB2601开发板上,CH2601主芯片通过SPI接口和W800 WIFi/BLE模块通信,W800芯片在此接口上提供AT命令的方式供主芯片使用W800的功能。
根据《W800模组AT指令集》中的描述,W800芯片中实现了WiFi配网、WiFi连接、TCP连接、阿里云飞燕生活物联网平台接入等功能。W800模组AT指令集.pdf (aliyuncs.com)
从RVB2601的SDK看,已经实现了基于W800 AT命令的Socket抽象设备,本文中将尝试在现有功能基础上,实现和测试验证阿里云平台接入的等相关功能,同时去了解YoC中网络设备和AT解析器框架。 AT指令解析器 AT指令解析器 主要用于发送命令、等待响应,用户可通过atparser_response_recv()获取并解析该应答数据,对于对端主动发送的数据(数据即为带外数据),则传入对应的带外处理函数中。 AT指令解析器 · GitBook (t-head.cn)
接口详细说明
初始化一个AT指令解析器
atparser_uservice_t *atparser_init(utask_t *task, const char *name, uart_config_t *config)
根据指定的微服务任务,串口名以及串口配置信息创建一个AT 指令解析器,成功则返回atparser_uservice_t指针,失败返回NULL
参数:
- task:微服务任务
- name: 串口名
- config: 串口配置信息
返回值:
成功则返回atparser_uservice_t指针,失败返回NULL
初始化一个用户自定义的AT指令解析器
atparser_uservice_t *atparser_channel_init(utask_t *task, const char *name, void *config, at_channel_t *channel);
根据指定的微服务任务,串口名以及串口配置信息创建一个AT 指令解析器,成功则返回atparser_uservice_t指针,失败返回NULL
参数:
- task:微服务任务
- name: 设备名
- config: 设备配置信息
- channel:at指令解析器的channel