ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

2.rtthread AT 总结

2.rtthread AT 总结

一、源代码结构

例如ESP8266:

AT 组件流向:

业务代码at_socket.c / at_cli.cat_client.cat_utils.c

at_socket.c

定位:AT 客户端核心

at_utils.c

定位:纯工具函数集合,无业务逻辑

  • AT 字符串匹配、行解析、参数截取
  • 字符串分割、跳过空格、查找关键字
  • hex 字符串转换、内存安全处理函数

at_socket.c

定位:AT 模组网络能力封装

  • 基于at_client,把 4G/WiFi 模组的 TCP/UDP 能力包装成POSIX 标准 socket 接口
  • 对接 RT‑Thread SAL 套接字抽象层,上层 MQTT/HTTP 等组件直接调用socket()/connect()/send()/recv(),不需要手写 AT 指令
  • 维护 socket 链表、接收数据包缓冲、事件通知

at_cli.c

定位:FinSH Shell 调试插件(CLI=Command‑Line Interface)依赖 RT‑Thread FinSH 组件,在控制台提供at系列调试命令:

  • 例如at send "AT+CSQ":手动向模组发送 AT 指令,直接看返回结果
  • 例如at info:查看 AT 设备运行状态

AT 设备适配层:

AT 核心框架层:

AT 扩展服务层:

二、数据流向与调用链路

1.发送路径(应用 → 模组)

2.接收路径(模组 → 应用)

返回列表