EC20指令
SIM卡热插拔检测:
AT+QSIMSTAT=1 //开启SIM卡热拔插状态报告
AT+QSIMDET=1,1或AT+QSIMDET=1,0//开启 SIM卡检测功能
当SIM卡拔出或者插上的时候,模块会有相应的提示:
+CPIN:NOT READY
AT+QSIMSTAT=1,1或AT+QSIMSTAT=1,0
二 ICCID唯一的号码与设备建立注册
三发送AT+CIPSTART="TCP","IP地址",端口号,返回CONNECT OK
查询用户号码:AT+CNUM
四短信操作:https://blog.csdn.net/woshishui918/article/details/79051473
短信操作步骤及相关命令:
(1)设置短信格式(文本=0、RTU=1)------AT+CMGF=1
(2)设置短信存储载体------AT+CPMS="SM","SM","SM"
(3)发送短信---AT+CMGS=="+8615083111880"
>DATA +0X1A
收:+CMGS: 54 OK
(4)读取短信---AT+CMGR=n
(5)删除短信----AT+CMGD
PDU短信:
二、中文PDU短信 https://blog.csdn.net/a_tu_/article/details/47808017
我用一个例子说明整个过程~
短信中心号码可以百度
北京移动 +8613800100500 北京联通 +8613010112500
上海移动 +8613800210500 上海联通 +8613010314500
天津移动 +8613800220500 天津联通 +8613010130500
重庆移动 +8613800230500 重庆联通 +8613010831500
短信中心:+8613800100500
收信号码:+8613401041516
短信内容:我爱听评书
第一步——格式化短信中心号码
1 - 要去掉“+”号,然后看看长度要是奇数的话就在末尾追加一个“F”。
+8613800200500 >>>> 8613800100500F
2 - 将奇数位和偶数位交换位置。
8613800100500F >>>> 683108100005F0
3 - 在前面加上“91”,是国际化的意思。
683108100005F0 >>>> 91683108100005F0
4 - 最后算一算它有多长了,把长度除于2,再把结果转换为2位的16进制数,加在最前面。
91683108100005F0长16 16/2=8 8的16进制“08” 一定要注意是2位
91683108100005F0 >>>> 0891683108100005F0
短信中心号码就处理完了,下几一步有类似的算法,现在我感觉就像做菜一样……
第二步——格式化收信号码
1 - 要去掉“+”号,然后看看长度要是奇数的话就在末尾追加一个“F”。
+8613401041516 >>>> 8613401041516F
2 - 将奇数位和偶数位交换位置。
8613401041516F >>>> 683104011415F6
第三步——格式化发送内容
1 - 把字符串转换为Unicode格式。(转换函数我写过了,直接拿去用好了)
我爱听评书 >>>> 62117231542C8BC44E66
2 - 把串Unicode码的长度除于2,再把结果转换为2位的16进制数,加在最前面。
62117231542C8BC44E66长20 20/2=10 10的16进制“0A”
62117231542C8BC44E66 >>>> 0A62117231542C8BC44E66
先看看我们都准备什么了,再继续~
格式化后的短信中心:0891683108100005F0
格式化后的收信号码:683104011415F6
格式化后的发送内容:0A62117231542C8BC44E66
第四步——组合处理
1 - 算一下收信号码的长度,不包括“+”号。这个收信号码指的是+8613401041516,而不是683104011415F6。
+8613401041516 >>>> 8613401041516 长度为“OD”(2位16进制数表示)
2 - 在长度前后分别加“1100”。
OD >>>> 1100OD
3 - 如果收信号码是手机的话就在后面追加“91”,如果是小灵通的话就要追加“81”。
+8613401041516是手机号码所以加“91”
11000D >>>> 11000D91
4 - 11000D91 + 格式化后的收信号码 + “000800” + 格式化后的发送内容
11000D91 >>>> 11000D91683104011415F60008000A62117231542C8BC44E66
5 - 计算上面那一大字符串的长度除于2,10进制表示。
11000D91683104011415F6008000A62117231542C8BC44E66长50 50/2=25
嗯,咱再看看手里都有啥了~
格式化后的短信中心:0891683108100005F0
实际的发送内容:11000D91683104011415F60008000A62117231542C8BC44E66
发送内容的长度:25
都准备好了我们可以发短信了 ^_^
最后一步——通过AT命令发送PDU短信
AT+CMGF=0 <Enter> (告诉它你要发的是PDU类的短信)
OK (这是它返回的它说:“我已经准备好了”)
AT+CMGS=25 <Enter> (告诉它你要发的实际长度)
>0891683108100005F011000D91683104011415F60008000A62117231542C8BC44E66
<Ctrl+Z> (看到它返回“>” 在后面输入格式化的短信中心+实际的发送内容最后按Ctrl+Z发送
EC20指令的更多相关文章
- EC20指令测试
cat /dev/ttyUSB2 & echo -e "AT+CGMM\r\n" >/dev/ttyUSB2 //输出模块型号 echo -e "AT+ ...
- EC20的指令
AT+QURCCFG="urcport","usbat" :当设置在主串口时且用主串口进行AT交互时开机会收到一串状态的信息,默认USBAT就不会 AT+IPR ...
- EC20的低功耗模式
EC20的支持以下几种工作模式,睡眠模式包括MCU主机睡眠和EC20睡眠. 当MCU主机不睡眠时,通过AT+QICSK =1(发送完之后串口被禁用不再响应AT指令),DTR=1(投票EC20可以进入睡 ...
- iOS逆向工程之Hopper中的ARM指令
虽然前段时间ARM被日本软银收购了,但是科技是无国界的,所以呢ARM相关知识该学的学.现在看ARM指令集还是倍感亲切的,毕竟大学里开了ARM这门课,并且做了不少的实验,当时自我感觉ARM这门课学的还是 ...
- 步入angularjs directive(指令)--点击按钮加入loading状态
今天我终于鼓起勇气写自己的博客了,激动与害怕并存,希望大家能多多批评指导,如果能够帮助大家,也希望大家点个赞!! 用angularjs 工作也有段时间了,总体感觉最有挑战性的还是指令,因为没有指令的a ...
- Git小技巧 - 指令别名及使用Beyond Compare作为差异比较工具
前言 本文主要写给使用命令行来操作Git的用户,用于提高Git使用的效率.至于使用命令还是GUI(Tortoise Git或VS的Git插件)就不在此讨论了,大家根据自己的的喜好选择就好.我个人是比较 ...
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- [Django]用户权限学习系列之User权限基本操作指令
针对Django 后台自带的用户管理系统,虽说感觉还可以,但是为了方便用户一些操作,特别设计自定义的用户权限管理系统. 在制作权限页面前,首先需要了解权限和用户配置权限的指令,上章讲到权限的添加,删除 ...
- 机器指令翻译成 JavaScript —— No.5 指令变化
上一篇,我们通过内置解释器的方案,解决任意跳转的问题.同时,也提到另一个问题:如果指令发生变化,又该如何应对. 指令自改 如果指令加载到 RAM 中,那就和普通数据一样,也是可以随意修改的.然而,对应 ...
随机推荐
- HttpClient的CircularRedirectException解决办法
解决方法: HttpGet httpGet = new HttpGet(" http://XXXX.XXX"); httpGet.getParams().setParameter( ...
- 安卓开发:图片的显示Mode
安卓开发中将图片放置在ImageView中展示,涉及到图片显示的模式,跟iOS开发中UIView的contentMode属性是一个意思,在安卓UI元素中使用的属性是scaleType,其中枚举值的效果 ...
- flask 前端 分页 显示
# flask 前端 分页 显示 1.分页原理 web查询大量数据并显示时有有三种方式: 从数据库中查询全部,在view/客户端筛选/分页:不能应对记录大多的情况,一般不使用: 分页查询,每次在数据库 ...
- 微信小程序解析HTML标签带有<p>
小程序中默认是不支持html格式没有<p>标签,但是有些接口需要返回带有标签的,例如 : 隐私协议: 解决方法: 小程序中有一个富文本标签组件,前端可以解析H5标签就是 rich-text ...
- Servlet_001 我的第一个servlet程序
今天开启servlet学习 一.第一个Servlet程序 首先写我们的第一个servlet程序 第一步:新建我们的servlet程序(Web Project),命名为Servlet_001 第二步 : ...
- OO Byebye
一.架构设计 1.第一次作业 首先做的就是把所有的Element全部存起来,我把UmlClass和UmlInterface重新用两个新的类来记录了一下,用于更快地找到他们的关联.其实总体思路还是比较简 ...
- 使用pycharm创建Django项目,'django-admin' 不是内部或外部命令
报错信息如下: (笔者的电脑为win10,python3.7,django 2.2.6 ) 第一种情况的解决方案:没有配置环境变量,Django安装之后,需要配置环境变量,命令django-admin ...
- Java中Volatile关键字详解(转载)
转载自:https://www.cnblogs.com/zhengbin/p/5654805.html 一.基本概念 先补充一下概念:Java 内存模型中的可见性.原子性和有序性. 可见性: 可见性是 ...
- Vue-路由模式 hash 和 history
Vue 为了构建 SPA(单页面应用),需要引入前端路由系统,这也就是 Vue-Router 存在的意义.前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求. 创建的项目默认是hash模式 ...
- Apache POI详解
一 :简介 开发中经常会设计到excel的处理,如导出Excel,导入Excel到数据库中,操作Excel目前有两个框架,一个是apache 的poi, 另一个是 Java Excel Apache ...