需要准备的硬件
使用代码源码位置:
功能:
可以通过STC89C52单片机拨打电话给某个号码,这个代码写的比较完善,不是简单的只是发送指令,
而且对MC20的反馈数据进行解析分析判断是否正常。正常则运行下一个执行,不正常就会重复发送该指令。
可以从调试信息很清楚判定现在的工作状态。
测试流程:
-
修改代码里面的电话号码为自己想要拨通的电话号码
char phoneNumber[] = "173XXXXXXX1"; //替换成需要被拨打电话的号码
-
用keil软件编译通过生成新的hex文件,然后下载到自己的51单片机,记住需要11.0592MHz晶振的板子,12MHz不行
-
下载后打开自己的板子的电脑对应的串口调试助手的com,可以看到单片机发送出来的AT指令,这里一直发送AT因为我们的MC20模块还没和单片机连接,并没通讯上,代码也不会向下继续运行其它指令
-
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秒频率闪烁时候,才能过去这条指令
|