【通信系列 6 -- AT 命令介绍】
文章目录
- 1. 背景介绍
- 1.2 AT的命令格式
- 1.3 AT指令用法
- 1.3.1 指令执行结果
- 1.2 CP 常用AT指令
- 1.2.1 CP 模式设置
- 1.2.2 网络相关
- 1.2.3 IP获取
- 1.2.4 Band 设置
- 1.2.5 电话相关
- 1.2.6 SIM卡检测
- 1.2.7 cmwap 和cmnet
- 1.2.8 AT 写 IMEI
1. 背景介绍
AT 命令一般分为三种:
- Command //AT命令。
- responses //AT命令的返回。
- an unsolicited result code //是主动上报的AT命令。
如:AT+CEREG=<n>, 这里是对系统进行某些设置 (<n>是AT命令的参数)
+CEREG: <stat>是主动上报的AT命令
1.2 AT的命令格式
AT指令格式:AT指令都以”AT”开头, 以(即\r,回车符)结束,模块运行后,串口默认的设置为:
- 8 位数据位;
- 1位停止位、
- 无奇偶校验位、硬件流控制(CTS/RTS).
note:为了发送AT命令, 最后还要加上 (即\n,换行符),这是串口终端要求。有一些命令后面可以加额外信息,如电话号码:ATD10086。
1.3 AT指令用法
- 测试命令(Test Command)
在AT指令后面加上“=?”即构成测试命令。例如下面命令会列举出所有支持的字符集。
“AT+CSCS=?”
- 读取命令(Read Command)
在AT指令后面加上“?”即构成读取命令。例如下面命令会列举出当前设置。
“AT+CSCS?”
- 执行命令(Execute Command)
一般而言在AT指令后加上“=”及命令参数即可。有些命令例如AT+CMGR命令没有参数,直接就可以执行。
AT+CFUN=4 //飞行模式
AT_CMGR
1.3.1 指令执行结果
每个AT命令执行后, 通常DCE都给状态值, 用于判断命令执行的结果。AT返回状态包括三种情况:
- OK, 表示AT命令执行成功,如:
AT+CPIN:
+CPIN: READY //sim 卡检测到
OK
- ERROR, 表示AT命令执行失败
- 命令相关的错误原因字符串. 返回状态前后都有一个字符.
- NO DIAL TONE 只出现在ATD命令返回状态中, 表示没有拨号音, 这类返回状态要查命令手册
- 一些命令本身是要向DCE查询数据,数据返回时,一般是+打头命令。 返回格式:
+ 命令 : 命令结果
如: AT+CMGR=8 (获取第8条信息),返回:
+CMGR: “REC UNREAD”,"+8613508485560",“01/07/16,15:37:28+32”,Once more
1.2 CP 常用AT指令
1.2.1 CP 模式设置
ATE1=1: 打开回显
AT+ CUFN?: 用来查看当前系统状态,返回值是1表示正常模式,返回值4表示飞行模式,
AT+CFUN=0:关掉CP
AT+ CFUN=4: 设置系统进入飞行模式
1.2.2 网络相关
AT+CSQ=?:查询网络质量
+CSQ:<rssi>, <ber>
rssi:31 -51 dBm or greater, 99 not known or not detectabl
ber:99 not known or not detectable
AT+CPIN: 搜索SIM卡命令,查询SIM是否准备好。
+CPIN: READY //sim 卡检测到
OK
AT+CREG?:查看系统是否驻网的命令,
+CREG: 2,1,"18c2","0e752e90",7
OK
AT+COPS?: 设置网路方式,也是查看系统是否驻网的命令,
+COPS: 0,2,"46000",7 //驻网成功,
OK
note:目前我们DKB板子之后SIM查到背面才可以使用ATD10086;打电话。
AT+CIREG?:
+CIREG: <n>,<reg_info> [,<ext_info>]
n: 0 disable reporting; 1 enable reporting
reg_info:0 IMS not registered; 1 registered.
1.2.3 IP获取
AT+GETIP=<CID>:获取IP
AT+CGDCONT?: 查看4G是否可以上网, 可以看到DKB是可以访问外网的,IP地址:191.153.154.241
2. 客户可以自己建立socket通过4G来访问外网。
3. 或者客户可以通过Wireshark 抓取数据包来看。
+CGDCONT: 1,"IPV4V6","ctnet.MNC011.MCC460.GPRS",
"100.114.66.138 254.128.0.0.0.0.0.0.0.1.0.2.181.153.154.241",0,0,,,,
AT+CGDCONT=1,"IP","CMNET" : 设置APN无线接入点.
AT+CGDCONT=1,"IP","cmwap"
OK
返回一个 ok 表示modem接通正常,
- IP: 表示使用因特网协议,
- PPP: 表示点对点协议。如 AT+CGDCONT=1,”PPP”,”cmwap” 点对点协议 wap 接入点。
- CMWAP:China Mobile Wireless Application Protocol,中国移动人为划分的两个GPRS接入方式之一,是为手机WAP上网而设立的。是手机上网使用的接入点的名称。CMWAP使用HTTP代理协议和WAP网关协议可以访问到Internet。
1.2.4 Band 设置
AT*BAND=X:
1)发送at*band=0(设置为GSM单模)
2)发送at*band=5(设置为LTE单模)
3)发送at*band=8(设置为GSM+LTE双模),根据当前的网络信号情况自动选择GSM或者LTE,优先LTE. 默认是at*band=8
1.2.5 电话相关
ATH: 挂电话命令
+CLCC: 1,0,2,0,0,"112",129,"",0,0
OK
/*Indicates a disconnect for Call Clearing or a Call Failed for*/
/* an outgoing call.*/
NO CARRIER
+CSQ:31,99
1.2.6 SIM卡检测
AT*SIMDETEC=1 //–Detect Sim1
*SIMDETEC:1,SIM
OK //检测到sim卡1
AT*SIMDETEC=2 //Detect Sim2
1.2.7 cmwap 和cmnet
wap接入点cmwap和cmnet有什么不同?
WAP是一种无线网络应用协议,而GPRS是实现WAP应用的一种网络传输技术方式。
CMWAP 和 CMNET 只是中国移动人为划分的两个wap接入方式。前者是为手机WAP上网而设立的,后者则主要是为PC、笔记本电脑、PDA等利用GPRS上网服务。
(1) 连网方式不同
就是说通过cmwap的方式访问,需要走移动的网关通过http协议去连接,这样的后果就是速度会变慢,而通过cmnet来连接的,就是直接连接到internet上的服务器,速度会比cmwap的快一些。
1.2.8 AT 写 IMEI
**IMEI:**国际移动设备识别码(International Mobile Equipment Identity)是手机硬件的一个手机序列号,串号,用于在移动电话网络中识别每一部独立的手机等移动通信设备,类似我们的身份证,是手机硬件的唯一标识。换句话说一个手机对某一个软件的使用权限是唯一的,一个手机一个手机号码绑定一次。
- 一般写IMEI是在产线上,产线本来就是
CFUN=0状态下,必须飞行模式才能写IMEI
相关文章:
【通信系列 6 -- AT 命令介绍】
文章目录 1. 背景介绍1.2 AT的命令格式1.3 AT指令用法1.3.1 指令执行结果 1.2 CP 常用AT指令1.2.1 CP 模式设置1.2.2 网络相关1.2.3 IP获取1.2.4 Band 设置1.2.5 电话相关1.2.6 SIM卡检测1.2.7 cmwap 和cmnet1.2.8 AT 写 IMEI 1. 背景介绍 AT 命令一般分为三种: C…...
flask捕获@app.errorhandler/@app.after_request全局异常总结
捕获处理全局异常的方法有两种:app.errorhandler、app.after_request1、第一种的使用,需要将flask的debug开关打开才能生效(自动捕获异常),在config里面将DEBUG TRUE就可以(默认是False)。 但是…...
智能晾衣架丨以科技解放双手
以往的晾衣架大多是平放式、手摇式居多,为衣物的晾晒提供了一个“栖身之所。”随着科技的日新月异,智能家居的产品越来越多。晾衣架也不例外,一款带有语音控制升降、同时具备照明和消毒的多功能衣架也已深入生活,正被人们所接受。…...
asp.net饭店订餐管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio计算机设计定制
一、源码特点 asp.net 饭店订餐管理系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语 言开发 asp.net饭店订餐系统 二、功能介…...
Pushgateway的场景使用
1,Pushgateway简介 Pushgateway为Prometheus整体监控方案的功能组件之一,并做为一个独立的工具存在。它主要用于Prometheus无法直接拿到监控指标的场景,如监控源位于防火墙之后,Prometheus无法穿透防火墙;目标服务没有可抓取监控数据的端点等多种情况。在类似场景中,可通…...
时间范围配置(昨天,今天,本周,本月,本季度,本年)
ranges:{ ‘昨天’: [ moment(moment().subtract(1, ‘days’).format(‘YYYY-MM-DD 00:00:00’)) ,moment(moment().subtract(1, ‘days’).format(‘YYYY-MM-DD 23:59:59’))], ‘今天’: [ moment(moment().format(‘YYYY-MM-DD 00:00:00’)),moment( moment().format(‘YYY…...
PlantUML 绘图
官网 https://plantuml.com/zh/ 示例 绘制时序图 USB 枚举过程 PlantUML 源码 startuml host <-- device : device insert host note right : step 1 host -> device : get speed, reset, speed check note right : step 2 host -> device …...
spring boot自定义配置时在yml文件输入有提示
自定义一个配置类,然后在yml文件具体配置值时,一般不会有提示,这个解决这个问题 依赖 <!--自定义配置类,在yml文件写的时候会有提示--><dependency><groupId>org.springframework.boot</groupId><arti…...
Linux:I/O 5种模型
图片来源:https://pdai.tech/md/java/io/java-io-model.html...
企业提升效率的秘密武器,推荐J2L3x聊天软件!
随着企业竞争加剧,提高效率已成为每个企业都必须面对的挑战。然而,企业要想提高效率,仅仅依靠员工的努力往往难以取得显著的效果,因此,许多企业开始寻找适合自己的工具和软件来提高生产力。 有一种聊天软件与众不同&a…...
Android Termux安装MySQL,并使用cpolar实现公网安全远程连接[内网穿透]
文章目录 前言1.安装MariaDB2.安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前言 Android作为移动设备,尽管最初并非设计为服务器,但是随着技术的进步我们可以将Android配置为生产力工具,变成一个随身…...
如何有效管理公司分配给员工的个人微信,实现聚合聊天管理?
现在很多公司会在员工入职后,会把企业的微信账号分配给员工,让他们用微信与客户沟通业务。但这个过程有很多风险,比如不能实时掌握员工与客户的沟通情况,可能出现员工私自添加或删除重要客户,有的员工还会离职时带走公…...
【HTML5】语义化标签记录
前言 防止一个页面中全部都是div,或者ul li,在html5推出了很多语义化标签 提示:以下是本篇文章正文内容,下面案例可供参考 常用语义化案例 一般我用的多的是header,main,footer 这些标签不难理解&#x…...
数据结构———— 堆
(一)基础补充 满二叉树是每一层节点都放满的二叉树。 完全二叉树是只有最后一层节点右边不放满的二叉树。 满二叉树(Perfect Binary Tree) 如果二叉树中除了叶子结点,每个结点的度都为 2,则此二叉树称为满二叉树。另一种说法:一个深度为k(>=-1)且有2^(k+1) - 1个结…...
如何选择专业的游戏开发公司?
如果你想找一家专业的游戏开发公司,你可以采取以下步骤来寻找合适的合作伙伴: 定义项目需求:首先,明确你的游戏开发项目的需求和目标。确定你需要什么类型的游戏(移动游戏、PC游戏、主机游戏等)、游戏类型…...
Unity基础课程之物理引擎3-碰撞检测案例-吃金币并加分显在UI文本框上
业务逻辑💼: 这个脚本的主要功能是用于显示和更新主角的得分。在游戏中,玩家需要吃到金币来增加分数,而这个脚本就是负责将得分的变化实时显示在屏幕上的。 程序逻辑💻: 1️⃣首先,在脚本的开始…...
DAPLink V2 STLink V2 JLink V9.7 串口四合一仿真调试下载器
作者 风陵: github:https://github.com/ForlingTec CSDN:https://blog.csdn.net/weixin_42518229 化作尘: https://blog.csdn.net/mbs520 一、产品介绍 该产品是一款基于USB2.0接口支持多个公司及多种内核的仿真器/编程器,板载了USB H…...
使用PyTorch处理多维特征输入的完美指南
💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…...
萝卜刀玩具上架亚马逊CPC认证测试标准
含铅或含铅涂料儿童产品的要求 分阶段限制儿童产品所有部件的铅含量,要求在3年内将产品任何可接触部件的铅含量限制从不超过重量的600ppm(0.06%)降至不超过重量的100ppm(0.01%)。 铅含量限值(总铅含量占重…...
阶段六-Day03-MyBatis
一、框架介绍 1. 框架的作用 将许多项目封装起来,形成了框架 2. 框架的优缺点 1. 优点 1.1 更好用 框架都是对Java原生内容进行的封装,对于企业级项目开发来说,使用框架比使用原生Java更好用,写起来更简单。 1.2 更强大 框架封装过程…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...
Sklearn 机器学习 缺失值处理 获取填充失值的统计值
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...
