AT指令如何发送短信?

AT指令发送短信

AT指令是调制解调器(Modem)与计算机通信时使用的标准命令集,广泛应用于短信发送、电话拨号等场景,通过AT指令,开发者可以控制设备完成短信的编写、发送和管理操作,本文将详细介绍AT指令发送短信的基本原理、常用指令、操作流程及注意事项。

at指令发送短信

AT指令基础与短信发送原理

AT指令以“AT”开头,后跟具体命令参数,每条指令以回车符(r)结束,短信发送主要涉及以下指令:

  1. AT+CMGF:设置短信模式。

    • AT+CMGF=0:PDU模式(需手动编码短信内容)。
    • AT+CMGF=1:文本模式(直接发送可读文本)。
  2. AT+CMGS:发送短信指令。

    • 示例:AT+CMGS="13800138000"r(输入号码后等待提示符)。
  3. AT+CMGD:删除短信。

    • 示例:AT+CMGD=1(删除索引为1的短信)。

短信发送的核心流程为:初始化Modem → 设置短信模式 → 编写内容 → 发送至目标号码 → 等待网络响应。

常用AT指令及操作步骤

以下是文本模式下发送短信的详细步骤:

  1. 初始化Modem

    at指令发送短信

    ATr  
    OK  

    若返回“OK”,表示Modem已就绪。

  2. 设置短信为文本模式

    AT+CMGF=1r  
    OK  
  3. 输入目标号码与内容

    
    AT+CMGS="13800138000"r  
    > Hello, this is a test message.  
    ```  后,按`Ctrl+Z`(或十六进制`1A`)发送。  
  4. 等待网络反馈

    +CMGS: 20  
    OK  

    “+CMGS: 20”表示短信已发送,20为短信长度。

PDU模式与文本模式对比

模式 优点 缺点 适用场景
文本模式 指令简单,无需编码 不支持中文等非ASCII字符 纯英文短信、调试场景
PDU模式 支持多语言,功能全面 需手动编码,指令复杂 国际短信、中文短信发送

PDU模式示例(发送“Hello”至“13800138000”):

AT+CMGS=23r  
> 0011000A913180013800000F80008A1B2C3D4E5F6  
+CMGS: 23  
OK  

常见问题与解决方法

  1. 发送失败,返回“ERROR”

    at指令发送短信

    • 检查SIM卡是否插好、信号是否稳定。
    • 确认短信中心号码(AT+CSCS)是否正确。
  2. 中文乱码

    切换至PDU模式,或使用UTF-8编码(AT+CSCS=”GSM”)。

相关问答FAQs

Q1:如何批量发送短信?
A1:可通过循环调用AT+CMGS指令实现,但需注意设备发送频率限制(如每秒1条),避免被运营商拦截,示例代码(Python):

import serial  
def send_sms(phone, message):  
    ser = serial.Serial('/dev/ttyUSB0', 9600)  
    ser.write(b'AT+CMGF=1r')  
    ser.write(f'AT+CMGS="{phone}"r'.encode())  
    ser.write(f'{message}x1a'.encode())  
    ser.close()  

Q2:如何查询已发送短信?
A2:使用AT+CMGL指令列出短信,参数可选“4”(已发送)、“0”(未读)等,示例:

AT+CMGL="4"r  
+CMGL: 1,"REC READ","+8613800138000",,"23/05/01,12:00:00+32"  
Test message  
OK  

通过合理运用AT指令,可高效实现短信发送功能,适用于物联网设备、报警系统等场景,实际操作中需结合硬件手册调整参数,确保兼容性与稳定性。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/71330.html

(0)
酷番叔酷番叔
上一篇 2小时前
下一篇 1小时前

相关推荐

  • arp d命令的具体使用方法是什么?

    在计算机网络中,地址解析协议(ARP)负责将IP地址映射为物理MAC地址,而ARP缓存表则记录了这种映射关系,用于提高数据传输效率,当网络环境发生变化(如IP冲突、设备更换或ARP欺骗攻击)时,缓存表中的条目可能失效,导致通信异常,手动清理ARP缓存成为必要的操作,而arp -d命令正是Windows和Linu……

    2025年8月30日
    5900
  • crontab命令执行后如何保存设置?

    crontab是Linux系统中用于设置周期性执行任务的工具,通过编辑crontab文件,用户可以定义定时任务,如数据备份、日志清理等,正确保存crontab任务是确保定时任务生效的关键步骤,以下是详细的操作流程和注意事项,进入crontab编辑模式要保存crontab任务,首先需要进入编辑模式,在终端输入命令……

    2025年8月23日
    5800
  • 安全加速SCDN折扣活动,如何参与?

    随着互联网业务的快速发展,用户对访问速度和稳定性的要求日益提高,安全加速SCDN(Secure Content Delivery Network)作为一种融合了安全防护与内容加速的技术,已成为企业提升用户体验、保障业务安全的重要选择,为了让更多企业享受到优质的安全加速服务,近期推出了一系列SCDN折扣活动,旨在……

    2025年11月30日
    1900
  • 按键精灵我的命令库怎么调用?

    在按键精灵的使用过程中,命令库是提升脚本复用性和开发效率的核心工具,无论是内置的常用命令,还是用户自定义的功能模块,掌握命令库的调用方法都能让脚本编写更高效、结构更清晰,本文将从内置命令库调用、自定义命令库创建与调用、高级调用技巧及常见问题解决等方面,详细说明按键精灵命令库的使用方法,内置命令库的调用方法按键精……

    2025年8月31日
    6200
  • 安全体系咨询哪家好?如何选靠谱的?

    在当今数字化快速发展的时代,企业面临着日益复杂的安全威胁,构建完善的安全体系已成为保障业务持续稳定运行的核心需求,许多企业在安全体系建设中常常面临“无从下手”“资源不足”“体系落地难”等痛点,此时选择专业的安全体系咨询机构便成为关键,安全体系咨询哪家好?本文将从评估维度、核心能力、服务案例等方面提供参考,帮助企……

    2025年11月28日
    1600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信