需要准备的硬件

使用代码源码位置:

功能:

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

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

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

测试流程:

  1. 修改代码内的需要被拨打的电话号码,然后编译正常通过。
char phoneNumber[] = "173XXXXXXX1";		//替换成需要被拨打电话的号码
  1. 把程序下载进STM32开发板
  2. 接线
接线说明:
STM32 MC20
3.3V ------> V_IO
GND <-----> GND
PA3 <------ GSM_TX
PA2 ------> GSM_RX //用于调试可不接
STM32 USB-TTL模块
GND ------> GND
PA9/TX1 ------> RXD



4. 这里如果你想要看到调试信息,可以用一个USB-TTL模块接调试输出的那个虚拟串口,如果不想知道就不用接打开串口调试助手,对应那个USB-TTL模块,等待接收调试信息



5. 给MC20开机,并启动MC20模块,如果之前已经启动过了,那就不用重复启动了

在USB-TTL对应的串口可以看到发送给MC20和MC20返回的数据的调试信息



如果都正常,您已经用STM32拨打出去电话了

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

  1. 3.1 使用STC89C52控制MC20拨打电话

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

  2. 4.2 使用STM32控制MC20发送短信

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

  3. 4.4 使用STM32控制MC20进行GPS帧数据解析

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

  4. 4.3 使用STM32控制MC20进行GPRS通讯

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

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

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

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

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

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

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

  8. Android 直接拨打电话界面

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

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

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

随机推荐

  1. 使用BMap.Label给百度地图的BMap.Marker上加上数字序号

    marker = new BMap.Marker(pointList[i]) marker.setLabel(getNumberLabel(i)); function getNumberLabel(n ...

  2. 一个关于原生 js 开发一款插件的前端教程

    教程链接: http://www.codeasily.net/course/plugin_course/ 写的不是很好,前面比较松后面比较急,请大家见谅,本人也没多少年前端经验,拿以前写过的教程网站, ...

  3. 使用apxs安装apache模块

    使用apxs安装apache模块                 ---by石锅拌饭 1.缘由 前几天迁移系统.发现配置了fastcgi的一个脚本下载文件总是提示类似Connection reset ...

  4. redis主从备份

    redis主从备份,默认是读写分离的,master用于写,slave用于读.slave的写只能用于存储一些短暂状态的变量,应为在下次同步时,会被移除. 配置主从备份原则:配从不配主,既只需修改从库配置 ...

  5. priority_queue优先队列/C++

    priority_queue优先队列/C++ 概述 priority_queue是一个拥有权值观念的queue,只允许在底端加入元素,并从顶端取出元素. priority_queue带有权值观念,权值 ...

  6. crontab 解析

    一.crontab简介 Linux 提供了一个非常强大且易用的设置周期性执行指令的工具命令--crontab,常常用于设置循环任务的执行. 默认情况下,任何使用者若不被加入/etc/cron.deny ...

  7. thinkphp 跨模块调用

    5.13 跨模块调用   在开发过程中经常会在当前模块调用其他模块的方法,这个时候就涉及到跨模块调用,我们还可以了解到A和R两个快捷方法的使用.例如,我们在Index模块调用User模块的操作方法 c ...

  8. JavaScript 是脚本语言

    JavaScript 是一种轻量级的编程语言. JavaScript 是可插入 HTML 页面的编程代码. JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行. JavaScrip ...

  9. 1501: 货币系统(money)

    1501: 货币系统(money) 时间限制: 1 Sec  内存限制: 64 MB 提交: 33  解决: 12 [提交][状态][讨论版] 题目描述 母牛们不但创建了它们自己的政府,而且选择建立了 ...

  10. nth-child 和 nth-of-type 的区别

    css3中有两个新的选择器可以选择父元素下对应的子元素,一个是:nth-child 另一个是:nth-of-type,它们2个的区别是: nth-of-type为什么要叫:nth-of-type?因为 ...