1int ioctlsocket(int s, long cmd, void *arg)

3、AT组件

AT 命令集是一种应用于 AT 服务器(AT Server)与 AT 客户端(AT Client)间的设备连接与数据通信的方式。其基本结构如下图所示:

了解协议栈的相关概念

AT 命令由三个部分组成,分别是:前缀、主体和结束符。其中前缀由字符 AT 构成;主体由命令、参数和可能用到的数据组成;结束符一般为(“ ”)。

响应数据: AT Client 发送命令之后收到的 AT Server 响应状态和信息。

URC 数据:AT Server 主动发送给 AT Client 的数据,一般出现在一些特殊的情况,比如 WIFI 连接断开、TCP 接收数据等,这些情况往往需要用户做出相应操作。

3.1 AT 组件简介

AT 组件是基于 RT-Thread 系统的 AT Server 和 AT Client 的实现,组件完成 AT 命令的发送、命令格式及参数判断、命令的响应、响应数据的接收、响应数据的解析、URC 数据处理等整个 AT 命令数据交互流程。

通过 AT 组件,设备可以作为 AT Client 使用串口连接其他设备发送并接收解析数据,可以作为 AT Server 让其他设备甚至电脑端连接完成发送数据的响应,也可以在本地 shell 启动 CLI 模式使设备同时支持 AT Server 和 AT Client 功能,该模式多用于设备开发调试。

AT Server 主要功能特点:

基础命令:实现多种通用基础命令(ATE、ATZ 等);

命令兼容:命令支持忽略大小写,提高命令兼容性;

命令检测:命令支持自定义参数表达式,并实现对接收的命令参数自检测功能;

命令注册:提供简单的用户自定义命令添加方式,类似于 finsh/msh 命令添加方式;

调试模式:提供 AT Server CLI 命令行交互模式,主要用于设备调试。

AT Client 主要功能特点:

URC 数据处理:完备的 URC 数据的处理方式;

数据解析:支持自定义响应数据的解析方式,方便获取响应数据中相关信息;

调试模式:提供 AT Client CLI 命令行交互模式,主要用于设备调试。

AT Socket:作为 AT Client 功能的延伸,使用 AT 命令收发作为基础,实现标准的 BSD Socket API,完成数据的收发功能,使用户通过 AT 命令完成设备连网和数据通讯。

多客户端支持:AT 组件目前支持多客户端同时运行

3.2 AT Client

AT Client 主要功能是发送 AT 命令、接收数据并解析数据。

AT Client列表:

1static struct at_client at_client_table[AT_CLIENT_NUM_MAX] = { 0 };

AT 客户端都挂载在at_client_table里。

AT Client数据结构:

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查