使用AT命令进行短信收发、电话本查询

shell 调用 AT指令查询SIM的话费和流量余额 ··· #!/bin/bash exe(){ rowNum=$(awk 'END{print NR}' xxxx/out) comm=$1 diff=$2 #echo "comm="$1 count=5 #echo "rowNum="$rowNum while [ $count -gt 0 ] do count=`expr $count - 1` if [ $count -eq 4 -o $3 = "null" ] then echo "comm=$co 阅读详情

概述:在JB00+BT项目的SMS Demo中使用了蓝牙的DUN服务来对手机发送AT命令,主要用AT命令实现2个方面的功能:发送短信、查询手机电话本。DUN连接成功后,就可以直接对手机发送AT命令了。使用AT命令之前,一般通过发送"AT"进行AT命令初始化,如果成功返回OK,即说明手机已可正常响应AT命令。

调试AT命令有一个比较简便的方法就是使用PC的超级终端进行调试:如果手机有串口接口,直接连接到PC的串口;如果手机无串口接口,可以使用USB蓝牙适配器和手机进行蓝牙配对,然后通过在超级终端使用DUN服务的蓝牙虚拟串口发送AT命令控制手机。

一、什么是AT 命令
AT 即Attention,AT指令集是从终端设备(Terminal Equipment,TE)或数据终端设备(Data Terminal Equipment,DTE)向终端适配器(Terminal Adapter, TA)或数据电路终端设备(Data Circuit Terminal Equipment,DCE)发送的。通过TA,TE发送AT指令来控制移动台(Mobile Station,MS)的功能,与GSM 网络业务进行交互。用户可以通过AT指令进行呼叫、短信、电话本、数据业务、传真等方面的控制。 

90年代初,AT指令仅被用于Modem操作。没有控制移动电话文本消息的先例,只开发了一种叫SMS BlockMode的协议,通过终端设备(TE)或电脑来完全控制SMS。几年后,主要的移动电话生产厂商诺基亚、爱立信、摩托罗拉和HP共同为GSM 研制了一整套AT指令,其中就包括对SMS的控制。AT指令在此基础上演化并被加入GSM 07.05标准以及现在的GSM07.07标准,完全标准化和比较健全的标准。如:对SMS的控制共有3种实现途径:最初的Block Mode;基于AT指令的Text Mode;基于AT指令的PDU Mode。到现在PDU Mode已经取代BlockMode,后者逐渐淡出。GSM 模块与计算机之间的通信协议是一些AT指令集,AT指令是以AT作首,字符结束的字符串,AT指令的响应数据包在中。每个指令执行成功与否都有相应的返回。其他的一些非预期的信息(如有人拨号进来、线路无信号等),模块将有对应的一些信息提示,接收端可做相应的处理。


示例:CDMA modem DTE
AT< CR>
< LF> OK < LF>
ATTEST< CR>
< CR> ERROR < LF>
如果AT指令执行成功,"OK"字符串返回;
如果AT 指令语法错误或AT 指令执行失败,
"ERROR"字符串返回。

二、如何使用AT命令发短信、查询电话本(红色部分改为实际内容)

1、发送短信步骤:

step1、测试手机是否支持相关AT指令:AT+CMGS=?

如果返回"OK"表明手机支持短信收发的AT命令,否则返回"ERROR"。

step2、选择短信模式为文本模式:AT+CMGF=1

如果返回"OK",设置成功。

除了文本模式,还可以设置为PDU编码模式,其指令为:AT+CMGF=0

step3、发送短信目标号码:AT+CMGS=phone number

如果返回"> ",号码发送成功,继续发送短信文本内容。

step4、直接将短信文本内容发送到手机,并以Ctrl+Z或者对应的ASCII码0x1a作为结束符。

step5、如果短消息发送成功,则返回"OK",并显示信息号:+CMGS: [,]
如果短消息发送失败,则返回"+CMS ERROR: "。

2、查找电话本步骤:

step1、测试手机是否支持相关AT指令:AT+CPBS=?

如果返回"OK"表明手机支持电话本查询相关的AT命令,否则返回"ERROR"。

step2、选择查询电话本,设置为手机存储体:AT+CPBS="ME"

如果返回"OK",设置成功。

step3、根据联系人姓名查找电话号码:AT+CPBF=name

如果查询成功,则返回相应的描述字段"+CPBF:......."。

这里也可以根据联系人ID进行查找:AT+CPBR=ID

如果查询成功,则返回"+CPBR:......."。

三、常用的短信、电话本命令

1、短消息命令

AT+CSMS
选择消息服务。支持的服务有GSM-MO、SMS-MT、SMS-CB。
AT+CNMA
新信息确认应答。
AT+CPMS
优先信息存储。这个命令定义用来读写信息的存储区域。
AT+CMGF
优先信息格式。执行格式有TEXT方式和PDU方式。
AT+CSAS
保存设置。保存+CSAS和+CSMP的参数。
AT+CRES
恢复设置。
AT+CSDH
显示文本方式的参数。
AT+CNMI
新信息指示。这个命令选择如何从网络上接收短信息。
AT+CMGR
读短信。信息从+CPMS命令设定的存储器读取。
AT+CMGL
列出存储的信息。
AT+CMGS
发送信息。
AT+CMGW
写短信息并存储。
AT+CMSS
从存储器中发送信息。
AT+CSMP
设置文本模式的参数。
AT+CMGD
删除短信息。删除一个或多个短信息。
AT+CSCA
短信服务中心地址。
AT+CSCB
选择单元广播信息类型。
AT+WCBM
单元广播信息标识。
AT+WMSC
信息状态(是否读过、是否发送等等)修正。
AT+WMGO
信息覆盖写入。
AT+WUSS
不改变SMS状态。在执行+CMGR或+CMGL后仍保持UNREAD。

2、电话本命令 

AT+CPBS
选择电话簿记忆存储。
AT+CPBR
读取电话簿表目。
AT+CPBF
查找电话簿表目。
AT+CPBW
写电话簿表目。
AT+CPBP
电话簿电话查询。
AT+CPBN
电话簿移动动作。这个特殊命令使电话簿中的条目前移或后移(按字母顺序)
AT+CNUM
签署者号码。
AT+WAIP
防止在下一次重起时初始化所有的电话簿。
AT+WDCP
删除呼叫电话号码。
AT+CSVM
设置语音邮件号码。

GSM之AT操作命令 因工作接触到GSM模块,所以收集整理了一下关于操作GSM模块的AT命令的资料: 1.AT的历史与应用 1.1 AT的历史 AT命令集是由拨号调制解调器(MODEM)的发明者贺氏公司(Hayes)为了控制Modem发明的控制协议.AT是Attention的缩写, 协议本身采用文本.每个命令均以AT打头,因此得名.这段历史参见 http://en.wikipedia.org/wi... 阅读详情

相关推荐

海康读码器上位机开发避坑指南:IDMVS客户端之外,如何用C# SDK搞定扫码、数据比对与实时控制?

本文详细介绍了如何利用海康读码器的C# SDK进行二次开发,实现从基础扫码到复杂工业控制的全流程解决方案。内容涵盖SDK架构解析、多设备管理系统构建、业务逻辑与设备控制实现,以及系统集成与性能优化等关键环节,为工业自动化领域的开发者提供实用指南。

weixin_30642561的博客 550

AT COMMAND的命令集

ETSI上有文档,是E文的,具体的文档号码忘了。下面的内容仅供参考。  一、            一般命令  1、            AT+CGMI  给出模块厂商的标识。  2、            AT+CGMM  获得模块标识。这个命令用来得到支持的频带(GSM  900,DCS  1800  或PCS  1900)。当模块有多频带时,回应可能是不同频带的结合。  3、      

2832

Qt5.12.12安卓开发环境搭建:Windows下避开SDK版本坑的保姆级教程

本文提供Qt5.12.12在Windows下搭建Android开发环境的详细教程,重点解决SDK版本兼容性问题,特别是cmdline-tools与JDK8的匹配陷阱。通过精准选择组件版本、手动配置路径和修复常见错误,帮助开发者高效完成环境配置,适用于Qt跨平台移动开发。

weixin_33737774的博客 542

LuatOS-Air AT应用指南--短消息指令流程

] OK 对于SMS-STATUS-REPORT,则返回: +CMGL:,,,,[],[],,使用如下指令的非请求结果码: +CMT:[], (启用PDU模式)或者+CMT:,[], ,[,,,,,,](启用TEXT模式。如果是TEXT模式(AT+CMGF=1): 对于SMS-DELIVER: +CMGR:,,[],[,,,,,,,] OK 对于SMS-SUBMIT: +CMGR:,,[][,,,,,[],,,] OK 对于SMS-STATUS-REPORT: +CMGR:,,,[],[],,

l531798151的博客 1371

IEEE Transactions on Industrial Informatics(TII) 投稿须知- Initial Submission

请注意,您可以在作者中心查看稿件的当前状态,如:在EIC办公室、分配给AE、AE邀请审稿人、AE指定审稿人、正在审稿、等待AE决定、等待EIC决定。为了确保公正的评审过程,我们要求在稿件中没有任何作者的身份(不包括作者的姓名、传记、隶属关系、求职信、签署的版权表格、识别脚注、致谢等)。如果你的手稿有很大一部分已经在会议上发表过,论文必须隐藏所有作者的身份,这样会议论文就可以被引用,就好像它是由不同的作者写的一样。请注意,通常你的技术成就是根据被引用的次数来评估的,而不是根据发表的论文数量。

loinleeai的博客 4429

NVIDIA DGX Spark实战:如何在桌面上轻松运行200B参数大模型?

本文详细介绍了如何利用NVIDIA DGX Spark在桌面端轻松运行200B参数大模型。通过实战演示,从系统初始化、模型获取部署到内存管理与性能调优,重点解析了其统一内存架构如何解决本地推理的显存瓶颈,并探讨了进行轻量化微调(如LoRA)的可能性,为AI开发者和研究团队提供了高效的本地化大模型操作方案。

weixin_29054195的博客 882

AT 指令和常见错误码

AT 指令和常见错误码

laotongxiao的博客 5598

qt医疗信息系统(HIS)

**UI 组件**: QWidget、QTextBrowser、QTableWidget、QGraphicsView 等。- **网络通信**: Qt Network (TCP/IP)- **DICOM 处理**: DCMTK 3.6.7。- **数据库**: SQLite (轻量、跨平台)**数据库文件**: `hospital.db`- **开发框架**: Qt 6 (C++)- 医疗影像 (DICOM) 查看器。**医疗影像 (DICOM) 查看器****电子病历 (EMR) 浏览器**

寒寒豆豆软件公司的博客 337

收发短信AT指令详解

1.AT指令概述 来源:http://www.rosoo.net/a/201011/10451.html 1.1由来 AT命令集是由拨号调制解调器(MODEM)的发明者贺氏公司(Hayes)为了控制Modem发明的控制协议.AT是Attention的缩写,协议本身采用文本.每个命令均以AT打头,因此得名。 AT指令,用于控制手机GSM模块。其中就包括对SMS的控制。AT指令在此基础上演化并被加入G...

qq_43416810的博客 1万+

TIM 2024 | AD-YOLO:一种结合 Swin Transformer 和注意力机制的实时 YOLO 网络用于机场场景检测

实时获取机场场景信息对于保障机场安全和提升机场运营效率至关重要。然而,机场场景图像中的人员和车辆目标尺寸较小,而且公开的机场数据不足,这使得机场物体检测成为一项颇具挑战的任务,难以同时实现高精度和实时检测。本文提出了一种全新的机场物体检测方法——机场检测器YOLO(AD - YOLO),它融合了改进的你只看一次(YOLO)算法、Swin Transformer和注意力机制的优势,以应对这一挑战。

小白学视觉 315

编程助手:CLAUDE.md 与 AGENTS.md 完全指南

AI编程助手配置文件指南 为解决AI编程助手在陌生项目中面临的运行、规范、架构等问题,本文提出两种配置文件: CLAUDE.md(根目录): 面向通用AI(如ClaudeCode) 包含项目命令、代码风格、架构说明等结构化信息 示例:启动命令:npm run dev,代码规范:TypeScript禁用any AGENTS.md(任意目录): 面向智能编码工具(如Cursor) 支持模块级配置(如微前端子应用) 示例:前端测试命令:npm test:web,API请求规范 与传统README.md的区别: 人

分享AI、区块链技术及应用,未来已来 1250

AT命令

概述:在JB00+BT项目的SMS Demo中使用了蓝牙的DUN服务来对手机发送AT命令,主要用AT命令实现2个方面的功能:发送短信、查询手机电话本。DUN连接成功后,就可以直接对手机发送AT命令了。使用AT命令之前,一般通过发送"AT"进行AT命令初始化,如果成功返回OK,即说明手机已可正常响应AT命令。 调试AT命令有一个比较简便的方法就是使用PC的超级终端进行调试:如果手机有串口接口,直

miaojian_430的专栏 551

一文吃透!C#上位机CAN总线通信开发:从协议解析到数据可视化

CAN底层协议仅定义了8字节数据的传输规则,实际业务需自定义应用层协议,实现多类型数据的有序传输,这是数据解析的核心。仲裁ID(16进制)数据长度(DLC)数据场格式业务含义解析规则0x0014字节0~3:温度数据温度采集(单位:℃)4字节→float类型(大端/小端需统一,如西门子PLC格式)0x0022字节0~1:转速数据电机转速(单位:r/min)2字节→short类型(Int16)0x0031字节0:bit0~bit7设备状态(8路开关量)

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 845

AT命令集详解

1.AT的历史与应用     1.1 AT的历史 AT命令集是由拨号调制解调器(MODEM)的发明者贺氏公司(Hayes)为了控制Modem发明的控制协议.AT是Attention的缩写,协议本身采用文本.每个命令均以AT打头,因此得名.这段历史参见http://en.wikipedia.org/wiki/Hayes_command_set   随着网络升级为宽带,速度很低拨号MODEM

知秋一叶 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

AT 指令集详解

因为指导学员做3G网卡应用,需要用到AT命令.因此整理这一篇文档. 1.AT的历史与应用 1.1 AT的历史 AT命令集是由拨号调制解调器(MODEM)的发明者贺氏公司(Hayes)为了控制Modem发明的控制协议.AT是Attention的缩写,协议本身采用文本.每个命令均以AT打头,因此得名.这段历史参见 http://en.wikipedia.org/wiki/Hayes_command_s...

yt0813的博客 4万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

at指令 meid_GSM之AT操作命令详解20160615

因工作接触到GSM模块,所以收集整理了一下关于操作GSM模块的AT命令的资料:1.AT的历史与应用1.1 AT的历史AT命令集是由拨号调制解调器(MODEM)的发明者贺氏公司(Hayes)为了控制Modem发明的控制协议.AT是Attention的缩写,协议本身采用文本.每个命令均以AT打头,因此得名.这段历史参见 http://en.wikipedia.org/wiki/Hayes_comman...

weixin_39766910的博客 977

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

常用的AT指令及小烦恼

常用的AT指令1.AT指令的概念 1.AT指令的概念 AT(Attention)指令集是从终端设备(Terminal Equipment,TE)或数据终端设备(Data Terminal Equipment,DTE)向终端适配器(Terminal Adapter,TA)或数据电路终端设备(Data Circuit Terminal Equipment,DCE)发送的指令。即是应用于终端设备与PC应用之间的连接与通信的指令。 其对所传输的数据包大小有定义:即对于AT指令的发送,除AT两个字符外,最多可以接收1

AJIEIT的博客 3282

AT指令集及常用指令

目录AT指令介绍 AT指令介绍   AT(Attention)指令集是从终端设备(Terminal Equipment, TE)或数据终端设备(Data Terminal Equipment, DTE)向终端适配器(Terminal Adapter, TA)或数据电路终端设备 (Data Circuit Terminal Equipment,DCE)发送的,通过TA,TE发送的AT指令来控制移动台(Mobile Station,MS)的功能,与GSM 网络业务进行交互;用户可通过AT指令进行呼叫、短信、电话

weixin_42647166的博客 8039

AT指令

AT+CMGF=0 初始化 AT+IPR=115200 AT+CPAS 查询工作状态,0:可以接受AT指令,1:不能接受AT指令 ATA 应答本次电话 ATSO=2 设置2秒后自动应答 ATSO=0 取消自动应答 ATSO?查询当前设置 ATH 结束本次呼叫 ATD10086 发起呼叫10086 ATD>SM202 呼叫电话本中202号记录的号码 AT...

a466318266的博客 420
上一篇: linux下安装gd库并且支持socket
下一篇: 关于VMware虚拟机下串口配置使用技巧
simonjay2007
博客等级 码龄17年 104粉丝 112原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值