MC8630模块(EVDO)成功发送短信

中兴MC8630模块AT指令集手册详解V1.1 & V1.2 本文还有配套的精品资源,点击获取 简介:中兴MC8630模块,一款GSM/GPRS网络的嵌入式模块,广泛应用于物联网设备的数据传输。中兴通讯提供的AT指令集手册,V1.1和V1.2版本,是开发者理解与操作该模块的重要参考资料。手册详细介绍了模块的启动/关闭、网络配置、数据传输、状态查询、故障排查、定时任务设置、固件升级等操作指令,以及V1.1与V1.2版本之间的区别。 ... 阅读详情

    这个发短信问题已经纠结笔者快两个月了,陆陆续续产生一些奇怪的问题,这里笔者对使用此模块要特别注意的地方进行一些总结和说明,希望用这个模块发短信的朋友们能够从中得到参考,提高开发进度。

    1.与MC8331A不同的是,MC8630是交互式发短信的。什么意思?

    MC8331A是直接一条AT指令,过去,其中包括发送短信的号码,内容和长度,而8630则不是这样,它是这样:

   

at^hcmgs="15868152889"CR    //CR是回车
>                           //>号是模块返回的
hello                       //这是你要发送的数据
0x1a                        //结束符
^HCMGS:1                    //如下是模块返回的
OK
^HCMGSS:1

    它是交互式的,首先输入要发送的号码,然后等待模块回应:“>”这个字符,然后在输入要发送的数据,这样完成发送短信。

    2.第一个问题倒不是什么难事,最让人纠结的就是结束符问题,看过手册的人都知道,如果是英文的要发送0x1a这个结束符,如果是中文要发送0xaa 0x1a这两个结束符。

    大家也许会想这个不是很简单吗?是的,一开始笔者也认为很简单,于是对于构造at指令的最后一个字符的时候赋值为:

   

cmd[end] = 0x1a


    这样弄吧,很长一段时间程序就一直阻塞在这个地方,经过检查发现不了问题,为什么?其实它的意思是:

cmd[end] = "\x1a"


   这点要特别注意,估计大多数人都是死在这个地方!

   3.AT指令“\r”问题

    也许你有过这个错误,也许你没有,但是发送AT指令一定要加"\r",pdf上没有,也不会特别说明,所以at指令必须有回车符,以保证指令开始的时候是顶头开始。如:

   

atCmdSend("AT\r");


    这个是小细节问题,不过如果编程编到头昏眼花的时候,可能不注意,也会让人百思不得其解

中兴通讯 MC8630模块用户硬件设计手册和AT指令集 中兴通讯4G模块 MC8630模块用户硬件设计手册和AT指令集 立即下载

相关推荐

中兴通讯 MC8630模块用户硬件设计手册_V1.3

中兴通讯 MC8630模块用户硬件设计手册_V1.3

Linux下ppp拨号+3G模块(evdo 中兴MC8630模块)

物联网的发展,嵌入式节点具备3G无线上网功能是个必不可少的功能,奈何网上的资料多数以WCDMA为主,电信的evdo资料不是很多,笔者经过一番实验,搜寻了一些网站,终于在开发板上,将EVDO模块(中兴MC8630)成功拨号上网,现分享步骤如下: 3G模块的速度非常快,所以普通的UART串口已经不能满足速度,所以会通过芯片的USB口来进行数据交互。硬件连接这里就忽略了,有兴趣的朋友可以买个usb口的

memoryjs的专栏 1万+

中兴通讯MC8630模块AT指令集手册_V1.1

很详细的中兴模块MC8630 AT命令文档

ZTE AC582上网卡Linux下拨号之 所感--文档

<!-- p {margin-bottom:0.21cm} h1 {margin-top:0cm; margin-bottom:0.58cm; color:rgb(0,0,0); text-align:left; page-break-inside:avoid} h1.western {font-family:"宋体","SimSun"; font-size:

zuosifengli的专栏 3492

中兴通讯MC8331A模块用户硬件设计参考手册_V1

1 概述 介绍MC8331A模块的基本技术规格、参考涉及的相关文档和缩略语。 2 MC8331A模块产品介绍 简要介绍MC8331A模块产品的原理图和相关标准。 3 管脚描述 介绍MC8331A模块管脚名称和功能。 4 硬件接口描述 介绍MC8331A模块各部分的硬件接口设计。 5 结构 介绍MC8331A模块的外观图、装配图、主板PCB 布线图和固定方式。 6 外围器件汇总 外围器件介绍。

中兴MC8331和MC8331A所有文档资料

MC8331A模块用户硬件设计手册_V1.4.pdf MC8331模块AT指令集手册_V1.4.pdf MC8331模块用户硬件设计手册_V1.5.pdf 中兴GSM.GPRS-CDMA模块选型手册V1.0.pdf 中兴通讯 MC8331A模块技术规格书_V1.1.pdf 中兴通讯_MG815+模块AT指令集手册V5.70(同时适用于MC8160、MC8260、MC4160、MC8331A、MC9160模块).pdf

SMS模块

  参考文档 《RIL Driver Implementation Reference》《中国电信CDMAEVDO-RevA数据终端客户端软件AT命令接口规范V1[1].1》 设计说明1、参数设置1.1   短信存储选择命令+CPMS目前EVDO可选值为:“SM”,表示SIM卡;“ME”,表示NV。目前只能读取SIM卡中的短信。1.2 短信格

4037

华为云Stack 8.X 流量模型分析(一)

​ 当内部需要提供对外服务时(如对外发布Web网站),外部地址发起主动连接,由路由器或者防火墙上的网关接收这个连接,然后将连接转换到内部,此过程是由带有公网IP的网关替代内部服务来接收外部的连接,然后在内部做地址转换,此转换称为DNAT,主要用于内部服务对外发布。​ 内部地址要访问公网上的服务时(如Web访问),内部地址会主动发起连接,由路由器或者防火墙上的网关对内部地址做个地址转换,将内部地址的私有IP转换为公网的公有IP,网关的这个地址转换称为SNAT,主要用于内部共享IP访问外部。

Ciyaso的博客 3247

WINCE基于MC8630的3G模块的控制和加载

<br />********************************LoongEmbedded********************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.01.14<br />类别:WINCE驱动开发<br />********************************LoongEmbedded********************************<br />系统:WINCE5.0+s3c244

LoongEmbedded的专栏 4005

MMSegmentation 安装教程,避免mmcv不合适版本,及相关问题解决

都行,不做要求。

qq_43683133的博客 1220

AD创建属于自己的元件库(详细)

我今天开始学习AD2022,但是我想自己创建属于自己的元件库,但是奈何找了好多教程就是随便几句话就把我打发走了,弄了一天都没搞定(也许是我比较菜),所以现在乱懂了,自己写一个属于我们自己小白的教程,希望有用吧哈哈我比较偷懒,直接使用嘉立创上画好的元件导入,和我们自己创建自己画的步骤其实都一样。

qq_33591173的博客 2万+

c语言通过串口发送at指令,通过AT指令操作串口收发短信

在之前配置短信语音网关的时候买了一台华为EC122(CDMA)插电信卡使用,配置到gammu之后执行发送命令提示SMSC没有配置。查了一下貌似CDMA没有什么短信中心号的东西。且这台设备好多操作指令都是华为自定义的,gammu无法直接操作。决定自己写程序操作设备串口实现短信收发。基本思路:1、程序文件打开串口设备,轮询串口返回;2、当接收到+CMTI指令的之后解析指令的值,例如:+CMTI:”ME...

weixin_26831583的博客 2790

【智能教育实践】MOOPer数据集在个性化学习路径规划中的应用

本文探讨了如何利用MOOPer数据集实现从“千人一面”到“千人千面”的个性化学习路径规划。通过分析学习者与平台的交互数据(如练习、反馈、讨论)并结合知识图谱,系统能够动态诊断学生知识状态,并为其推荐最优学习序列。文章详细介绍了基于数据驱动的推荐系统核心技术,包括知识追踪、图谱关联挖掘及排序策略,旨在解决传统在线教育的僵化问题,提升学习效率与动力。

read5的博客 230

华为EC169上网卡发短信

<br />仔细看了看AT指令手册,然后动手试了试,终于搞定了.<br />用超级终端做的测试.<br /> <br />at^hsmsss=0,0,1,0<br />at+cmgf=1<br />at^hcmgs="10000" //此处的10000为目标手机号码;<br />>hello world   //此处为短信内容,目前仅试了英文,没试中文.<br />ctrl+z   //此处为发送控制符,直接在键盘上按组合键就OK.但是在些程序的时候,需要用0x1A来代替.

mimi00x的专栏 1491

MediaPipe+Unity动作捕捉实战:如何用普通摄像头驱动3D人物模型(附避坑指南)

本文详细介绍了如何利用MediaPipe和Unity实现低成本动作捕捉,仅需普通摄像头即可驱动3D人物模型。通过MediaPipe的3D坐标预测能力,结合Unity的骨骼映射优化,解决单目摄像头下的三维重建难题,并提供实战避坑指南和性能优化技巧,帮助开发者快速实现专业级的人物模型驱动效果。

weixin_29047545的博客 359

Endnote 导入参考文献的时候,格式错误太多了。et.al错误,国标GBT7714在endnote中的详细配置教程,适用于本科,硕士论文文献插入的模板

EndNote插入文献常遇到以下错误主要如下: 等、et al不分; 英文作者全名大写; 期刊名字使用了缩写(图片里没有体现;卷号、期号缺失时出现乱码,多了半个括号;页码范围略去了相同部分;没有悬挂缩进,本文全部解决,全网最细

sakura的博客 3万+

CDMA_EVDO基础知识.md

EVDO基础概念 EVDO定义及标准 1x RTT 与 EVDO比较 Forward Link Traffic Channel 前向自适应调制和编码 前向链路时隙结构 前向链路数据传输 前向链路混合ARQ 前向链路DRC表格 反向链路EVDO基础概念EVDO定义及标准    ~~~~Evolution to packet Data Optimized services,EVDO是CDMA2000 的

我们的征途是星辰大海 1700

UE5实战:如何用Mesh Shader优化你的游戏场景渲染(附性能对比)

本文深入探讨了在UE5中利用Mesh Shader优化游戏场景渲染的实战方法。通过对比传统渲染管线与GPU Driven Pipeline,详细阐述了Mesh Shader如何通过任务着色器和网格着色器两阶段并行处理,实现更精细的meshlet级剔除,从而显著降低Draw Call和GPU带宽,提升渲染性能。文章附有具体的性能对比数据与代码示例,为开发者优化高复杂度场景提供了有效路径。

sunny的博客 297

EVDO

EVDO 百科名片 电信3G EVDO(EV-DO)实际上是三个单词的缩写:Evolution(演进)、 Data Only。 其全称为:CDMA2000 1xEV-DO,是CDMA2000 1x演进(3G)的一条路径的一个阶段。这一路径有两个发展阶段,第一阶段叫1xEV-DO,即“Data Only”,它可以使运营商利用一个与IS-95或CDMA2000相同频宽的CDMA载...

huiqinbo的专栏 1221

一文搞懂蚁群算法Ant Colony Optimization(ACO)!!!(灵感起源+数学原理+代码实现+实战应用)

本文系统介绍了蚁群算法的原理与实现。首先从蚂蚁觅食行为出发,阐释了信息素正反馈机制如何引导群体找到最短路径。随后详细解析了算法的数学模型,包括状态转移规则和信息素更新机制。通过MATLAB代码演示了算法在旅行商问题(TSP)中的应用,展示了路径构建和优化的完整流程。最后讨论了算法的优势、局限性和实际应用场景。蚁群算法通过模拟生物智能,为解决复杂优化问题提供了一种高效方法,其核心在于信息素的正反馈机制与随机探索的平衡。

qq_42212808的博客 888

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

evdo设置

F379+ EVDO上网设置 一、安装驱动: 手机开机后用数据线通过USB接口连接到电脑,自动提示找到新的硬件。 三、电脑设置: 2. 右键网上邻居 属性 创建一个新的连接 点下一步 选择连接到INTERNET(C)点下一步 选择手动设置我的连接(M)点下一步 选择用拨号调制解调器连接(选择SAMSUNG CDMA MODEM) 输入ISP名称:EVDO 点下一...

xbgordon的专栏 358

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

segmentation fault----在Linux下真是一个蛋疼的错误,总结一下出现这错误的经历

这真是一个蛋疼的错误!     笔者经历过几次这个错误,一直也没有注意,知道后来经常遇到这个错误,觉得应该总结出来,引以为戒,同时也为各位同仁们,增加错误库,提高解决问题的速度。     这个错误,查一下就知道是段错误,一般是指针出错,或者内容益处,反正就是一些不正常操作,系统无法执行下去了,就会产生这个错误。     废话,这谁都知道,但是要根据具体问题,具体分析,说的那么虚,谁知道到底为

memoryjs的专栏 1万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

上一篇: 无线与有线共存上网----办公室必用,笔者亲测,网上不明不白,乱七八糟的信息太多
下一篇: 一套不需要控制方向的RS485通讯电路
memoryjs
博客等级 码龄18年 240粉丝 113原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值