常用AT指令

常用AT指令有:
ATZ 软复位modem。
AT&K0 关闭流控制。
AT&K3 使用RTS/CTS流控制。
AT&W0 把当前设置保存到写到modem的永久存储器中的出厂设置配置文件0中。
AT&Y0 当MODEM在上电时自动调用出厂设置0,这样就能保证每次上电恢复我们预先设置的参数。
ATDn 拨号,其中n为电话号码。它必须是命令行中的最后一条指令,ATD命令使调制解调器摘机后,根据输入的参数拨号,以建立连接。
+++ 退出字符。切换调制解调器从在线状态到命令状态,而不会中断数据连接。
ATA 应答。它必须是命令行中的最后一条指令。调制解调器在应答方式下继续执行连接程序。在与远端调制解调器交换载波后进入连接状态,如果没有检测到载波, 调制解调器将挂机。在连接过程中,通过DTE输入的任何一个字母都将中断这一命令。
ATH0 使调制解调器挂机
ATE0 关闭命令字符回显
ATE1 打开命令字符回显
AT&F 调MODEM的出厂设置
ATS0=n 将MODEM设置成自动应答,当MODEM检测到线路上的振铃音时开始计数,当有连续n声振铃音,则MODEM自动摘机,响应呼叫。
注:每次输入AT指令后(除+++以外),输入+ Chr(13)即“Enter”键,即完成指令发送。如果用HEX格式发送,在命令头、尾都要加回车、换行代码。例如:
ATE0————0D 0A 41 45 30 0D 0A
常见的响应有:
OK 响应正确。
ERROR 错误码。
RING 响铃。
BUSY 占线。
NO ANSWER 无应答。
CONNECT 9600 拨号成功。
NO CARRIER 对方挂机。
NO DIALTONE 拨号无响应。
拨通电话:
当发送“ATD”+ 电话号码 + Chr(13)时,MODEM就开始拨号,拨号需要一定的时间,在拨号的过程中可以不断读取MODEM的CD指示灯的状态,当电话拨通后CD指示灯会点亮。并返回“CONNECT + 波特率”的信息。
若对方MODEM不能摘机,则返回 “NO DIALTONE”,CD指示灯灭。
若对方电话正忙,则返回 “BUSY”。CD指示灯灭。
通过MODEM发送数据
当电话拨通后,MODEM能自动将串口发送缓冲区中数据信息通过电话线路传递给对方MODEM,对方MODEM在将信息传递个设备,而MODEM也会将设备返回的信息回送个计算机的缓冲区中,整个过程自动完成,所以你不必担心您的信息是否能发送出去。
挂电话
当电话拨通后,MODEM不再接收AT指令,要使其回到命令状态,则必须发送“+++”信息,使MODEM回到命令状态,然后发送“ATH”+ Chr(13)则可以挂断电话。

### 常用AT指令及其功能说明 AT指令是一组用于控制调制解调器和其他通信设备的标准命令集,广泛应用于GSM模块、Wi-Fi模块等通信设备中。以下是一些常用AT指令及其功能说明: #### 基础指令 - **AT**:测试指令,用于检测模块是否正常工作。如果模块响应“OK”,则表示模块已准备好。 - **AT+GMR**:查看模块的固件版本信息。该指令可以帮助用户确认当前使用的固件版本,以便进行必要的更新或故障排查[^2]。 #### 网络相关指令 - **AT+CWMODE=?**:查询模块支持的工作模式。常见的模式包括Station模式、AP模式以及AP兼Station模式。 - **AT+CWMODE=<mode>**:设置模块的工作模式。其中,`<mode>`的取值可以是: - `1`:Station模式,模块作为客户端连接到其他Wi-Fi网络; - `2`:AP模式,模块作为一个热点供其他设备连接; - `3`:AP兼Station模式,模块同时作为热点和客户端[^2]。 - **AT+CWJAP=<ssid>,<pwd>**:以Station模式连接到指定的Wi-Fi网络。`<ssid>`是目标网络的名称,`<pwd>`是网络密码,最长支持64字节的ASCII字符。 #### TCP/IP相关指令 - **AT+CIPSTART=?**:查询`CIPSTART`指令的参数范围。该指令用于启动TCP或UDP连接,需要先设置`AT+CIPMUX=0`以启用单路连接模式。响应中会包含支持的类型(如"TCP"或"UDP")、IP地址范围和端口范围[^2]。 - **AT+CIPSTART=<type>,<ip>,<port>**:建立TCP或UDP连接。`<type>`指定连接类型,`<ip>`为目标服务器的IP地址,`<port>`为目标端口号。 - **AT+CIPSTO=<time>**:设置服务器超时时间。`<time>`的取值范围为0到28800秒,单位为秒。此指令用于控制模块在等待服务器响应时的最大等待时间[^2]。 - **AT+CIPSERVER=<mode>,<port>**:启用或禁用服务器模式。`<mode>`为`0`时关闭服务器模式,为`1`时开启服务器模式;`<port>`指定服务器监听的端口号,默认为333[^2]。 - **AT+CIPMODE=<mode>**:设置数据传输模式。`<mode>`为`0`时使用非透传模式,允许发送和接收任意长度的数据包;为`1`时使用透传模式,适用于连续的数据流传输[^2]。 #### 其他常用指令 - **AT+CIPSEND**:发送数据。在建立连接后,使用该指令发送数据到远程服务器。可以通过指定数据长度或直接输入数据进行发送。 - **AT+CIPCLOSE**:关闭当前连接。当不再需要保持连接时,可以使用此指令释放资源。 - **AT+CIPMUX=<mode>**:设置多路连接模式。`<mode>`为`0`时启用单路连接,为`1`时启用多路连接。 ### 示例代码 以下是一个简单的Python脚本,演示如何通过串口发送AT指令并接收响应。假设使用的是Python的`pyserial`库来操作串口。 ```python import serial # 初始化串口 ser = serial.Serial('COM3', 9600, timeout=1) def send_at_command(command): """发送AT指令并读取响应""" ser.write((command + '\r\n').encode()) response = ser.read(100).decode() return response # 测试AT指令 response = send_at_command('AT') print("Response to AT:", response) # 查询模块版本 response = send_at_command('AT+GMR') print("Module version:", response) # 设置工作模式为Station模式 response = send_at_command('AT+CWMODE=1') print("Set mode to Station:", response) # 连接到Wi-Fi网络 ssid = 'your_ssid' password = 'your_password' response = send_at_command(f'AT+CWJAP="{ssid}","{password}"') print("Connect to Wi-Fi:", response) # 关闭串口 ser.close() ``` ### 注意事项 - 在使用AT指令之前,确保模块已正确连接到计算机,并且串口配置(如波特率)与模块的设置一致。 - 不同厂商的模块可能支持不同的AT指令集,建议查阅具体模块的官方文档以获取完整的指令列表和参数说明。 - 对于Wi-Fi模块,连接到网络时需确保输入的SSID和密码正确,否则可能导致连接失败。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值