1 本文的目的和结构
1.1 本文的目的和背景
随着 AT 命令的逐渐普及,越来越多的嵌入式产品上使用了 AT 命令,一般AT 命令作为主芯片和通讯模块的协议接口,硬件接口一般为串口,这样主控设备可以通过简单的命令和硬件设计完成多种操作。
但是不同厂家的不同 AT 命令之间还是没有完全的标准化,这直接提高了用户使用的复杂性。对于 AT 命令的发送和接收以及数据的解析没有统一的处理方式,并且在使用 AT 设备连接网络时,只能通过命令完成简单的设备连接和数据收发功能,很难做到对上层网络应用接口的适配,不利于产品设备的开发。
为了方便用户使用 AT 命令,并且适配不同厂家的不同设备, RT-Thread 提供了 AT 组件用于 AT 设备的连接和数据通讯。AT 组件的使用包括客户端的和服务器,对于嵌入式设备而言,更多的情况下设备使用 AT 组件作为客户端连接服务器设备,所以本文将为大家介绍 AT 组件中客户端的原理、移植方式和主要功能使用,并介绍在客户端的基础上实现标准 BSD Socket API,使用 AT 命令进行网络通讯。
1.2 本文的结构
本应用笔记将从以下几个方面来介绍 RT-Thread AT 组件:
- AT 组件介绍
- AT Client 配置与使用
- AT Socket 配置与使用
2 问题阐述
本应用笔记将围绕下面几个问题来介绍 RT-Thread AT 组件。
- 什么是 AT 命令? AT 组件的主要功能是什么?
- 什么是 AT Client,它与 AT Server 之间如何进行数据交互?
- 如何使用 AT 命令实现标准 BSD Socket API,支持多种网络软件包和功能?
想要解决这些问题,就要了解 RT-Thread AT 组件基本原理和功能使用方式。下面就从 RT-Thread AT 组件 AT Client 原理开始逐步介绍 配置方式、移植以及功能使用,使用户快速上手 AT 组件的 AT Client 功能。
3 问题的解决
3.1 AT 命令简介
AT 命令是一种应用于 AT 客户端(AT Client)与 AT 服务器(AT Server)间的设备连接与数据通信的方式。 其基本结构如下图所示:
3.1.1 AT 命令基本概念