当前位置: 首页 > news >正文

3.2 使用STC89C52控制MC20发送短信

需要准备的硬件

  • MC20开发板 1个
    https://item.taobao.com/item.htm?id=562661881042
  • GSM/GPRS天线 1根
    https://item.taobao.com/item.htm?id=531979567261
  • IPEX接口转SMA接口转接线 1根
    https://item.taobao.com/item.htm?id=531979903836
  • GPS有源天线 1根
    https://item.taobao.com/item.htm?id=26241892024
  • 中国移动或者联通的SIM卡一张,micro sim尺寸的
    需要自备,如果只是测试GPRS可以购买物联网卡,该卡不能测试电话和短信功能
    https://item.taobao.com/item.htm?id=562257211778
  • DC9V1A电源一个
    https://item.taobao.com/item.htm?id=41915338664
    或者两节串联的18650电池
    https://item.taobao.com/item.htm?id=530904849115
  • USB-TTL模块 1个
    https://item.taobao.com/item.htm?id=39481188174
  • 杜邦线若干
    https://item.taobao.com/item.htm?id=562848773709
  • STC89C52最小系统板
    https://item.taobao.com/item.htm?id=26410708738

使用代码源码位置:
TB2aIZSh46I8KJjy0FgXXXXzVXa-63891318.png

功能:

可以通过STC89C52给某个手机号发送短信,这个代码写的比较完善,不是简单的只是发送指令,
而且对MC20的反馈数据进行解析分析判断是否正常。正常则运行下一个执行,不正常就会重复发送该指令。
可以从调试信息很清楚判定现在的工作状态。

测试流程:

  1. 修改代码内的需要被拨打的电话号码和需要发送的内容,然后编译正常通过。
    这里以短信内容为“ILoveMCU.taobao.com”为例
char phoneNumber[] = "173XXXXXXX1";     //替换成需要被拨打电话的号码
char msg[] = "ILoveMCU.taobao.com";     //短信内容  
  1. 用keil软件编译通过生成新的hex文件,然后下载到自己的51单片机,记住需要11.0592MHz晶振的板子,12MHz不行
  2. 下载后打开自己的板子的电脑对应的串口调试助手的com,可以看到单片机发送出来的AT指令,这里一直发送AT因为我们的MC20模块还没和单片机连接,并没通讯上,代码也不会向下继续运行其它指令
    https://img.alicdn.com/imgextra/i1/63891318/TB2EkUlh3nH8KJjSspcXXb3QFXa-63891318.png
  3. STC89C52和MC20连接
    mc20的V_IO,GND,GSM_TX,GSM_RX分别接STC89C52的5V,GND,P3.0,P3.1
    TB2o.4FivDH8KJjy1XcXXcpdXXa-63891318.png
    然后正常给MC20供电,然后按下启动按键3秒松开启动MC20模块,当我们看到MC20的NET指示灯开始闪烁。我们会看到以下的串口界面
    另外一定要记住下载单片机程序的时候要拔掉单片机和MC20的连接,要不会和下载程序冲突影响下载。
    下载后再接线
    https://img.alicdn.com/imgextra/i4/63891318/TB24trPh8fH8KJjy1XbXXbLdXXa-63891318.png
    上面的CPIN指令可以查询是否插入识别SIM卡,如果卡在这里,往下不执行,说明没识别你用的SIM卡,检查下是否为移动联通卡,或者是否卡插正确,上面的CPIN指令可以查询是否插入识别SIM卡,如果卡在这里,往下不执行,说明没识别你用的SIM卡,检查下是否为移动联通卡,或者是否卡插正确,
    看到后面的电话号码和自己发送的短信说明已经发短信了,等待手机接收就行了

转载于:https://www.cnblogs.com/Mysterious/p/8029960.html

相关文章:

  • POJ 2823 Sliding Window 单调队列
  • 别人做的扫地机器人,有机会我也想搞一台!
  • backgroundworker与Thread区别
  • 数据类型--字符串
  • 如果在BackgroundWorker运行过程中关闭窗体…
  • [TestLink]testlink安装
  • 【Android】使用AsyncTask来处理一些简单的需要后台处理的动作
  • 如何让你的网页加载时间降低到 1s 内
  • 洛谷 [P1118] IOI1994 数字三角形
  • C#中 一次执行多条带GO的sql语句
  • 贪吃蛇-需求分析
  • C#正则表达式(RegEx)高级应用之分组(Group)替换(Replace)
  • algorithm.sty not found error in LaTeX 解决方法
  • C# regex replace
  • linux 的 awk 使用
  • 收藏网友的 源程序下载网
  • 2018一半小结一波
  • axios 和 cookie 的那些事
  • es6(二):字符串的扩展
  • ES6系统学习----从Apollo Client看解构赋值
  • Javascript基础之Array数组API
  • Java-详解HashMap
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • mysql常用命令汇总
  • SpriteKit 技巧之添加背景图片
  • 从零开始的无人驾驶 1
  • 分布式任务队列Celery
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 浮动相关
  • 高程读书笔记 第六章 面向对象程序设计
  • 关于使用markdown的方法(引自CSDN教程)
  • 好的网址,关于.net 4.0 ,vs 2010
  • 缓存与缓冲
  • 说说动画卡顿的解决方案
  • 携程小程序初体验
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • (11)MATLAB PCA+SVM 人脸识别
  • (16)UiBot:智能化软件机器人(以头歌抓取课程数据为例)
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (3)(3.5) 遥测无线电区域条例
  • (9)STL算法之逆转旋转
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (二)hibernate配置管理
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (一一四)第九章编程练习
  • (译)计算距离、方位和更多经纬度之间的点
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)Mysql的优化设置
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .NET设计模式(8):适配器模式(Adapter Pattern)
  • .NET委托:一个关于C#的睡前故事
  • .NET运行机制
  • ;号自动换行