需要准备的硬件

使用代码源码位置:

功能:

可以通过STC89C52单片机拨打电话给某个号码,这个代码写的比较完善,不是简单的只是发送指令,

而且对MC20的反馈数据进行解析分析判断是否正常。正常则运行下一个执行,不正常就会重复发送该指令。

可以从调试信息很清楚判定现在的工作状态。

测试流程:

  1. 修改代码里面的电话号码为自己想要拨通的电话号码
    char phoneNumber[] = "173XXXXXXX1";		//替换成需要被拨打电话的号码
  2. 用keil软件编译通过生成新的hex文件,然后下载到自己的51单片机,记住需要11.0592MHz晶振的板子,12MHz不行
  3. 下载后打开自己的板子的电脑对应的串口调试助手的com,可以看到单片机发送出来的AT指令,这里一直发送AT因为我们的MC20模块还没和单片机连接,并没通讯上,代码也不会向下继续运行其它指令

  4. STC89C52和MC20连接

    mc20的V_IO,GND,GSM_TX,GSM_RX分别接STC89C52的5V,GND,P3.0,P3.1



    然后正常给MC20供电,然后按下启动按键3秒松开启动MC20模块,当我们看到MC20的NET指示灯开始闪烁。我们会看到以下的串口界面

    另外一定要记住下载单片机程序的时候要拔掉单片机和MC20的连接,要不会和下载程序冲突影响下载。

    下载后再接线



    看到ATD指令,说明已经开始拨打电话了,

    上面的CPIN指令可以查询是否插入识别SIM卡,如果卡在这里,往下不执行,说明没识别你用的SIM卡,检查下是否为移动联通卡,或者是否卡插正确,

    而CREG指令可以获取现在的SIM卡是否已经有服务信息了。一般net指示灯能3秒频率闪烁时候,才能过去这条指令

3.1 使用STC89C52控制MC20拨打电话的更多相关文章

  1. 4.1 使用STM32控制MC20拨打电话

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  2. 3.2 使用STC89C52控制MC20发送短信

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  3. 3.6.使用STC89C52控制MC20解析GPS的经纬度数据上传到指定服务器

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  4. 3.4 使用STC89C52控制MC20解析GPS的经纬度数据在LCD1602上显示

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  5. 3.3 使用STC89C52控制MC20通过GPRS远程发送数据

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  6. 脚本控制向Android模拟拨打电话,发送短信,定位设置功能

    做行为触发的时候要向模拟器实现拨打电话,发送短信,定位设置的的功能,可以很方便通过telnet localhost  5554实现. 写个脚本很快的搞定了.网上资料很多,脚本的很少,也所积点德啦. 写 ...

  7. 黑科技,利用python拨打电话,控制手机技术!

    跟selenium操作浏览器原理类似,这是用appium操作移动设备的一个自动化功能,自娱自乐,主要是通过小案例引出相关技术 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很 ...

  8. 1.3 使用电脑测试MC20的电话语音功能

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  9. Android 直接拨打电话界面

    Android 拨号界面和直接拨打电话界面代码控制 //定义TAG为空 private static final String TAG = null; //定义Button的点击事件 tell.set ...

随机推荐

  1. 初识WatiN

    WatiN —— Web Application Testing In .Net 为什么会有WatiN? 给用户提供一个.Net平台下,将Web测试自动化的便捷途径. 如何通过WatiN来进行自动化测 ...

  2. 551. Student Attendance Record I【easy】

    551. Student Attendance Record I[easy] You are given a string representing an attendance record for ...

  3. MFC 点击按钮,弹出另一个对话框(模态及非模态对话框)

    1. 模态对话框 资源视图->Dialog->右键->添加资源->新建->对话框->右键->添加类. 例如:在A_dialog中点击按钮弹出B_dialog  ...

  4. Easyui Datagrid扩展fixRownumber方法

    首先,从datagrid生成的代码,我们可以发现,在rowNumber上都有特定的class标记,datagrid-cell-rownumber,datagrid-header-rownumber. ...

  5. Java NIO(2):缓冲区基础

    缓冲区(Buffer)对象是面向块的I/O的基础,也是NIO的核心对象之一.在NIO中每一次I/O操作都离不开Buffer,每一次的读和写都是针对Buffer操作的.Buffer在实现上本质是一个数组 ...

  6. 对Servlet容器的补充和一个问题的请教

    [0]README 0.1)本文是对 一个servlet容器  的补充: 0.2)发这个博文的最终目的是为了请教各位前辈,帮我解决一个问题,问题描述在文末, 谢谢: [1]Servlet容器 1.1) ...

  7. 怎么用ChemDraw Pro绘制不定域共轭环

    ChemDraw Pro 14作为一款非常受欢迎的化学绘图软件,不论是化学分子结构.轨道,还是符号.箭头等图形都可以用它轻松的绘制出来,而且在其工具栏中,集成了10种环工具,可以对不同种类.不同尺寸的 ...

  8. Tesseract–OCR 库原理探索

    一,简介: Tesseract is probably the most accurate open source OCR engine available. Combined with the Le ...

  9. @Resource 注解

    @Resource 注解被用来激活一个命名资源(named resource)的依赖注入,在JavaEE应用程序中,该注解被典型地转换为绑定于JNDI context中的一个对象. Spring确实支 ...

  10. python redis操作

    import redis r = redis.Redis( host='1xx.x24.3xx.x0', #ip, password='xnxnxn&*',#密码 port=6379, #端口 ...