http://blog.sina.com.cn/s/blog_524846000101cwtr.html

部分摘自华清远见网上资料。

GPRS模块,是具有GPRS数据传输功能的GSM模块。GPRS模块就是一个精简版的手机,集成GSM通信的主要功能于一块电路板上,具有发送短消息、通话、数据传输等功能。GPRS模块相当于手机的核心部分,如果增加键盘和屏幕就是一个完整的手机。普通电脑或者单片机可以通过RS232串口与GPRS模块相连,通过AT指令控制GPRS模块实现各种基于GSM的通信功能。
GPRS模块,是具有GPRS数据传输功能的GSM模块。GPRS模块就是一个精简版的手机,集成GSM通信的主要功能于一块电路板上,具有发送短消息、通话、数据传输等功能。GPRS模块相当于手机的核心部分,如果增加键盘和屏幕就是一个完整的手机。普通电脑或者单片机可以通过RS232串口与GPRS模块相连,通过AT指令控制GPRS模块实现各种基于GSM的通信功能。

在超级终端输入:

At

OK

返回OK则说明你的模块可以正常工作,否则出现故障。

第一、文本模式下发送短信流程

文本模式下发送信息基本分三步骤:

1.      设置发送模式

AT+CMGF=1

CMGF为0是以PDU模式发送,为1则是以文本方式发送。

2.接收方电话号码

AT+CMGS=138XXXXxxxx

3.输入内容

>hello world !

注意:每敲完一条指令都要按回车,直到返回“>”后开始输入信息,但是在输入完短信内容后不能敲回车而应该按组合键“ctrl+z”作为结束符。回车键在ascii码中的数值是“\r”,“ctrl+z”在ascii码中的数值是“0x1a”,所以在编程时可以直接在信息内容后进行字符串拼接。

示例:

=====================================================

AT

OK

AT+CMGF=1

OK

AT+CMGS=1380189xxxx

>hello word !

=====================================================

提示:AT指令不区分大小写,所以无论是大写还是小写都可以识别。

返回OK则说明你的模块可以正常工作,否则出现故障。

第二、PDU模式下发送短信流程

Pdu模式发送信息仍然是三步搞定,只不过我们在前期得做一些稍微麻烦的数据转换工作。

我们先来看流程理清脉络:

1.AT+CMGF=0 设置为PDU模式发送中文编码短信

2.AT+CMGS=信息长度

3.发送短信

示例:

======================================================================

AT

OK

AT+CMGF=0

OK

AT+CMGS=25

>0891683108100005F011000D91685110906474F90A534E6E058FDC89C1FF01

======================================================================

前面的我们容易理解:

“AT+CMGF=0”将发送模式置为PDU模式;

“AT+CMGS=25”这句CMGS后面跟的不再是电话号码了,而是“信息长度”,这里我加了双引号表示有独特的含义后面解释。

现在分析最关键的地方:

“0891683108100005F011000D91685110906474F90008000A534E6E058FDC89C1FF01”

我们可以将这段头疼的字符串分为三段:

-----------------------------------------------------------------------------------------

“0891683108100005F0       ”                                中心号码段

“11000D91685110906474F9000800”                     收信方号码段

“0A534E6E058FDC89C1FF01”                            信息段

-------------------------------------------------------------------------------------------

1.       先来看中心号码段。

关于什么是中心号码我想百度比我解释的更清楚,这里不再赘述了。

我们其实还可以将其再细分:

08           91           683108100005F0

其中91是国际化的意思,这个作为前缀必须加上。

683108100005F0是什么意思呢?我们将它奇数位和偶数位反转看看:

“683108100005F0”

“8613800100500F”

熟悉吗?13800100500是中国移动北京地区的中心号码,86是中国地区的前缀这个大家应该清楚。F呢?因为在进行PDU编码的时候规定了如果号码位数是奇数位那么就要在末尾加F进行补齐,由于我们国家的手机号码位数都是11位,因此要在末尾补F。于是中国移动北京地区的中心号码加86补齐F再奇偶位反转最后加91国际化前缀就由原来的:

“13800100500”

变成了:

“91683108100005F0”

接着我们数一下它有多少位,16位,16/2=8,所以我们把整个中心号码组合编码后的长度除以2,最后以十六进制的表示方式加在它的前端就大功告成了。

“0891683108100005F0”

Ok搞定,下一步继续。

======================================================================

1.       收信方号码段。

“11000D91685110906474F9000800”

同样将其细分:

1100       0D91      685110906474F9           000800

其中“1100”和“000800”分别是收信方号码段固定的前缀和后缀,所以一定要记得加上。

“685110906474F9”不用讲了,和中心号码段一样的编码方式,原型是:

“8615010946479”(华清远见北京总部执勤电话)。

“0D91”需要注意一下,其中这里的“91”和中心号码段的“91”意义不一样了,这里是表示接收方的设备是手机的意思,“81”则是小灵通。“0D”是一个十六进制数,还原为十进制后是13,什么意思呢?接受方的号码是“8615010946479”共13位。

因此接收方电话经偶数位<补齐F>

然后<奇数偶数位反转>

<加上号码长度>

最后<加上前后缀>最终由:

“8615010946479”

转型为:

“11000D91685110906474F9000800”。

======================================================================

2.       信息段。

“0A534E6E058FDC89C1FF01”

信息段是最简单的,大家需要了解GPRS以PDU模式发送信息时,其内容是以unicode的方式编码的。

其中:

“534E6E058FDC89C1FF01”

还原成GB汉字编码为:

“华清远见!”

其编码(十六进制)长度是20位,20/2=10,10的十六进制表示方式是0X0A。因此信息段的最终编码为:

“0A534E6E058FDC89C1FF01”

3.       组合。

如果把发短信比喻为一次快递的投递过程,那么过程如下:

首先是中心号码(相当于我们的邮局);

接着是接收方号码段(相当于我们的收信人地址);

最后是信息段(就是你的信件了)。

OK,组合结果就是:

“0891683108100005F011000D91685110906474F90008000A534E6E058FDC89C1FF01”

至此,PDU的编码就正式结束了。

不过我们还有最后一件事,那就是前面提到的那个“信息长度”。

邮局是国家的公有的,我们无权去干涉,但是收信人和信息是我们自己制定的,因此我们要精确掌握自己所属的信息。

于是我们将中心号码段剔除,变为:

“11000D91685110906474F90008000A534E6E058FDC89C1FF01”

计算一下字符串长度,50位。OK,50/2=25。

于是在PDU模式下,我们所谓的“信息长度”:AT+CMGS=25。

回顾一下PDU模式下的发信息流程:

======================================================================

AT

OK

AT+CMGF=0

OK

AT+CMGS=25

>0891683108100005F011000D91685110906474F90A534E6E058FDC89C1FF01

======================================================================

一定要记得最后输完信息编码后要按“ctrl+z”而不是回车。

我做GPRS模块实验,用的是NeoWay“有方”的GPRS模块,M660+。

短信中心号码,需要根据SIM所在地址更换,下面列举中国移动的短信中心号码,备查。

中国移动短消息中心号码大全

省份 城市 短消息中心号码 
北京 北京 13800100500 
天津 天津 13800220500 
河北 石家庄 13800311500 
保定 13800312500 
衡水 13800318500 
邢台 13800319500 
邯郸 13800310500 
张家口 13800313500 
承德 13800314500 
唐山 13800315500 
廊坊 13800316500 
沧州 13800317500 
秦皇岛 13800335500 
山西 太原 13800351500 
大同 13800352500 
阳泉 13800353500 
朔州 13800349500 
吕梁 13800358500 
忻州 13800350500 
榆次 13800354500 
长治 13800355500 
晋城 13800356500 
临汾 13800357500 
运城 13800359500 
内蒙古 呼和浩特 13800471500 
包头 13800472500 
集宁 13800474500 
东胜 13800477500 
临河 13800478500 
锡林浩特 13800479500 
海拉尔 13800470500 
赤峰 13800476500 
乌海 13800473500 
阿拉善左旗 13800483500 
通辽 13800475500 
乌兰浩特 13800482500 
辽宁 沈阳 13800240500 
大连 13800411500 
鞍山 13800412500 
抚顺 13800413500 
本溪 13800414500 
丹东 13800415500 
锦州 13800416500 
营口 13800417500 
阜新 13800418500 
辽阳 13800419500 
铁岭 13800410500 
朝阳 13800421500 
盘锦 13800427500 
葫芦岛 13800429500 
吉林 长春 13800431500 
吉林 13800432500 
延吉 13800433500 
四平 13800434500 
通化 13800435500 
白城 13800436500 
辽源 13800437500 
松源 13800438500 
白山 13800439500 
黑龙江 哈尔滨 13800451500 
齐齐哈尔 13800452500 
牡丹江 13800453500 
佳木斯 13800454500 
大庆 13800459500 
上海 上海 13800210500 
江苏 苏州 13800512500 
镇江 13800511500 
南通 13800513500 
常州 13800519500 
无锡 13800510500 
南京 13800250500 
扬州 13800514500 
盐城 13800515500 
徐州 13800516500 
淮阴 13800517500 
连云港 13800518500 
泰州 13800523500 
宿迁 13800527500 
浙江 杭州 13800571500 
宁波 13800574500 
嘉兴 13800573500 
金华 13800579500 
温州 13800577500 
衢州 13800570500 
舟山 13800580500 
湖州 13800572500 
绍兴 13800575500 
台州 13800576500 
丽水 13800578500 
安徽 滁州 13800550500 
合肥 13800551500 
蚌埠 13800552500 
芜湖 13800553500 
淮南 13800554500 
马鞍山 13800555500 
安庆 13800556500 
宿州 13800557500 
阜阳 13800558500 
黄山 13800559500 
淮北 13800561500 
铜陵 13800562500 
宣城 13800563500 
六安 13800564500 
巢湖 13800565500 
贵池 13800566500 
福建 福州 13800591500 
厦门 13800592500 
宁德 13800593500 
莆田 13800594500 
泉州 13800595500 
漳州 13800596500 
龙岩 13800597500 
三明 13800598500 
南平 13800599500 
江西 南昌 13800791500 
上饶 13800793500 
鹰潭 13800701500 
抚州 13800794500 
九江 13800792500 
宜春 13800795500 
吉安 13800796500 
赣州 13800797500 
景德镇 13800798500 
萍乡 13800799500 
新余 13800790500 
山东 青岛 13800532500 
济南 13800531500 
淄博 13800533500 
潍坊 13800536500 
烟台 13800535500 
威海 13800631500 
临沂 13800539500 
莱芜 13800634500 
聊城 13800635500 
日照 13800633500 
枣庄 13800632500 
德州 13800534500 
济宁 13800537500 
荷泽 13800530500 
泰安 13800538500 
东营 13800546500 
滨州 13800543500 
河南 郑州 13800371500 
许昌 13800374500 
开封 13800378500 
商丘 13800370500 
漯河 13800395500 
周口 13800394500 
平顶山 13800375500 
信阳 13800376500 
南阳 13800377500 
洛阳 13800379500 
焦作 13800391500 
新乡 13800373500 
鹤壁 13800392500 
驻马店 13800396500 
濮阳 13800393500 
安阳 13800372500 
三门峡 13800398500 
湖北 武汉 13800270500 
襄樊 13800710500 
孝感 13800712500 
咸宁 13800715500 
荆州 13800716500 
宜昌 13800717500 
恩施 13800718500 
十堰 13800719500 
随州 13800722500 
荆门 13800724500 
江汉 13800728500 
湖南 长沙 13800731500 
常德 13800736500 
衡阳 13800734500 
邵阳 13800739500 
岳阳 13800730500 
益阳 13800737500 
湘潭 13800732500 
株州 13800733500 
张家界 13800744500 
郴州 13800735500 
娄底 13800738500 
吉首 13800743500 
怀化 13800745500 
永州 13800746500 
广东 广州 13800200500 
深圳 13800755500 
汕头 13800754500 
韶关 13800751500 
清远 13800763500 
潮州 13800768500 
揭阳 13800663500 
湛江 13800759500 
茂名 13800668500 
江门 13800750500 
东莞 13800769500 
河源 13800762500 
梅州 13800753500 
汕尾 13800660500 
佛山 13800757500 
云浮 13800766500 
顺德 13800765500 
肇庆 13800758500 
江门 13800750500 
阳江 13800662500 
珠海 13800756500 
中山 13800760500 
惠州 13800752500 
广西 南宁 13800771500 
柳州 13800772500 
桂林 13800773500 
梧州 13800774500 
玉林 13800775500 
百色 13800776500 
钦州 13800777500 
河池 13800778500 
北海 13800779500 
防城港 13800770500 
海南 海口 13800898500 
重庆 重庆 13800230500 
四川 成都 13800280500 
攀枝花 13800812500 
自贡 13800813500 
绵阳 13800816500 
南充 13800817500 
广安 13800826500 
宜宾 13800831500 
内江 13800832500 
乐山 13800833500 
西昌 13800834500 
雅安 13800835500 
康定 13800836500 
马尔康 13800837500 
德阳 13800838500 
广元 13800839500 
泸州 13800830500 
遂宁 13800825500 
巴中 13800827500 
达川 13800818500 
贵州 贵阳 13800851500 
云南 昆明 13800871500 
玉溪 13800877500 
曲靖 13800874500 
保山 13800875500 
思茅 13800879500 
楚雄 13800878500 
文山 13800876500 
丽江 13800888500 
个旧 13800873500 
大理 13800872500 
陕西 西安 13800290500 
延安 13800911500 
榆林 13800912500 
渭南 13800913500 
商洛 13800914500 
安康 13800915500 
汉中 13800916500 
宝鸡 13800917500 
铜川 13800919500 
咸阳 13800910500 
甘肃 兰州 13800931500 
白银 13800943500 
临夏 13800930500 
甘南 13800941500 
张掖 13800936500 
金昌 13800935500 
酒泉 13800937500 
天水 13800938500 
定西 13800932500 
平凉 13800933500 
庆阳 13800934500 
陇南 13800939500 
青海 西宁 13800971500 
宁夏 银川 13800951500 
新疆 乌鲁木齐 13800991500 
克拉玛依 13800990500 
石河子 13800992500 
奎屯 13800993500 
昌吉 13800994500 
吐鲁番 13800995500 
库尔勒 13800996500 
阿克苏 13800997500 
喀什 13800998500 
伊宁 13800999500 
塔城 13800901500 
哈密 13800902500 
和田 13800903500 
阿勒泰 13800906500 
阿图什 13800908500 
博州 13800909500

GPRS模块发送短信相关推荐

  1. Linux-C实现GPRS模块发送短信

    "GSM模块,是将GSM射频芯片.基带处理芯片.存储器.功放器件等集成在一块线路板上,具有独立的操作系统.GSM射频处理.基带处理并提供标准接口的功能模块.GSM模块根据其提供的数据传输速率 ...

  2. 【物联网智能网关-03】GPRS模块中文短信收发

    在去年年初,就已经推出V1.0.0的GPRS库,不过在这个版本上只是实现了西文短信收发和字符串方式的GPRS数据通信,功能还相对不完善(参见我以前的博文<GPRS通信实现>).最近升级的版 ...

  3. linux 4g模块发送短信,OpenWRT使用4G模块上网和发送短信

    1.配置ppp 配置参考:https://blog.csdn.net/qianguozheng/article/details/50543704 结果就是:lsusb能发现HUAWEI的4G模块,if ...

  4. 通过twilio模块发送短信

    twilio官方参考文档:https://www.twilio.com/docs/sms/quickstart/python 使用该模块时只需要在twilio官网注册账号并获取到account_sid ...

  5. 使用python移动飞信模块发送短信

    作者:miaoo 1.应用场景 由于自己做的一个系统需要用到发送短信到自己手机的功能,于是搜索了一下,发现了一个通过移动飞信通道发送短信开源库:PyFetion PyFetion 模拟实现了飞信的通信 ...

  6. cmgr linux命令,linux下利用GPRS模块发短信、打电话

    本文转自:http://www.cnblogs.com/wss-linux/p/3986006.html 一.开发环境 内核版本:linux-3.0 开发板:FL2440(nandflash:K9F1 ...

  7. 4G模块发送短信流程

    一.英文短信 发:AT 收:OK 发:AT+CMGF=1 (设置短信格式,1为文本格式:0为PDU格式) 收:OK 发:AT+CMGS=13902433649 收:> 发:data→ // da ...

  8. 16.6 用 Twilio 发送短信

    大多数人更可能靠近自己的手机,而不是自己的电脑,所以与电子邮件相比,短信 发送通知可能更直接.可靠.此外,短信的长度较短,让人更有可能阅读它们. 在本节中,你将学习如何注册免费的 Twilio 服务, ...

  9. 【毕业设计教程】单片机发送短信消息(GMS模块) - 物联网 嵌入式 stm32

    文章目录 1 简介 2 GMS模块 3 技术规格 3.1 适应性 4 arduino + GMS 示例代码 5 实现效果 6 最后 1 简介 Hi,大家好,这里是丹成学长,今天向大家介绍如何使用GMS ...

  10. python实现第三方验证码获取_python利用第三方模块,发送短信验证码(测试案例)...

    今天学到个利用python第三方,发送短信验证码的代码,速实现一遍,短信立即收到,果断记录在案! 环境:虚拟机上centos7平台,python2.7版本: 第三方服务提供商是:云通讯官网:www.y ...

最新文章

  1. 处理业务代码中循环遍历出现的性能问题
  2. swift4.2 - 一个自定义view弹框
  3. 宏基因组多少钱一个样_离网式光伏发电系统费用一般是多少钱
  4. 数据绑定概述(MSDN)
  5. FFmpeg音视频同步的问题
  6. 网络规划设计师水平考试备考资料(11.分析总结)
  7. mysql case循环_php一次操作多个数据是循环更新好还是使用mysql里带的casewhen?性能方面哪个更有优势?...
  8. 官方发布 激情世界杯】浩海技术 GHOST XP SP3 世界杯装机特别版★用稳定压倒一切!...
  9. java ant和maven_JAVA构建工具:Maven与Ant的区别
  10. 页游终端服务器,页游定制高防服务器秒解封服务器
  11. 计算机蓝牙快捷键,电脑蓝牙怎么开,详细教您怎么打开电脑蓝牙
  12. 网站优化数据关键词统计分析优化技巧
  13. qt 计算字符串宽度高度
  14. 场效应管和三极管的区别
  15. FusionCharts基本使用
  16. Python系统学习-26
  17. java中scanner是什么意思_java中scanner是什么
  18. 电脑Win10 企业版如何激活
  19. Activiti实现抄送方案实现(监听器方式)
  20. lyapunov指数的matlab仿真,输出lyapunov指数收敛曲线

热门文章

  1. 统一社会信用代码的校验
  2. 苹果8硬件保修服务器,iPhone手机刷机报错,很多是硬件问题
  3. 记2017莫名其妙的美团校招安卓岗
  4. 【Netty源码系列(一)】SpringBoot整合Netty实现多端口绑定
  5. 什么叫特立独行,其实不过是活在自己的节奏里
  6. python打开csv文件绘制折线图_Python程序分析CSV文件并绘制趋势图,python,csv
  7. boot版本是什么 cent os_确定 BootROM 或固件版本
  8. 100 年前科幻小说的概念,创造了今天千亿美元的市场
  9. android 点击提示音,Android 下实现------蜂鸣提示音和震动
  10. linux连接无线网络配置详解