AT指令详解:物联网开发的“通用语言”与实战指南

一、AT指令的起源与发展

        AT指令(Attention Command)最早由Hayes公司于1981年设计,用于控制调制解调器拨号上网。随着物联网技术的发展,这种基于文本的协议逐渐成为嵌入式设备(如Wi-Fi模块、蓝牙芯片、4G模组)与主控设备通信的“通用语言”。其核心功能包括:
• 设备控制:唤醒/休眠模式切换

• 网络配置:设置Wi-Fi密码、IP地址、短信中心号

• 数据传输:TCP/IP通信、短信收发

• 信息查询:获取IMEI、信号强度、SIM卡状态

截至2025年,AT指令已形成标准化体系(如3GPP TS 27.007),并衍生出针对不同协议的扩展指令集(如GSM、LTE-M)。

二、AT指令语法结构

1.格式规范

每条指令以AT开头,以\r\n(回车换行)结尾,遵循严格的格式规范:

AT+<命令前缀>[=<参数1>,<参数2>...]\r\n

2.四大命令类型:

  1. 测试命令:AT+<x>=?
    示例AT+CWMODE=? → 返回支持的Wi-Fi模式列表
  2. 查询命令:AT+<x>?
    示例AT+CWMODE? → 返回当前工作模式(如Station/AP/双模)
  3. 设置命令:AT+<x>=<参数>
    示例AT+CWJAP="SSID","password" → 连接指定Wi-Fi
  4. 执行命令:AT+<x>
    示例AT+CMGD=1 → 删除第1条短信

3.响应机制:

• 成功:OK

• 失败:ERROR

• 主动上报:+<事件代码>(如新短信通知+CMTI

三、核心应用场景与指令集

1. 基础设备控制

指令功能示例响应
AT+CGSN获取设备IMEI865234056789012
AT+CSQ查询信号强度+CSQ: 28,99
AT+CPIN?检测SIM卡状态+CPIN: READY

2. 短信操作(PDU模式)

AT+CMGF=0       // 切换PDU模式
AT+CMGS=22      // 发送短信(22字节)
> 0011000C916851... // PDU编码内容

说明:PDU模式支持Unicode,需通过十六进制编码处理中文

3. 网络连接(以ESP8266为例)

AT+CWMODE=3              // 双模式(STA+AP)
AT+CWLAP                 // 扫描Wi-Fi网络
AT+CWJAP="SSID","PWD"    // 连接路由器
AT+CIPSTART="TCP","api.com",80 // 建立TCP连接
AT+CIPSEND=14            // 发送14字节数据
> Hello, IoT!            // 数据内容

四、实战案例:ESP8266实现HTTP请求

1.初始化配置

AT+RST                  // 重启模块
AT+CIPSNTPCFG=1,8       // 配置NTP服务器(北京时间)

    ​2.HTTP GET请求

    AT+CIPSTART="TCP","api.weather.com",80
    AT+CIPSEND=48
    > GET /v1/forecast?city=beijing HTTP/1.1\r\nHost: api.weather.com\r\n\r\n

    3.​​数据处理​

    ​        接收响应后解析JSON,可使用AT+CIPRECVDATA读取缓存数据

    五、开发注意事项

    1.兼容性问题​

    ​不同厂商可能扩展私有指令(如乐鑫的AT+SYSRAM?用于查询内存),需查阅官方文档。

    2.超时机制​

    建议设置3-5秒超时,避免因网络延迟导致程序阻塞。

    3.错误处理​

    ERROR响应需分级处理(如重试连接、重置模块)。

    4.数据编码​

    使用AT+CSCS="UCS2"处理多语言字符时,需进行Unicode转换。

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值