一、简介
本模块是我们做的“基于物联网的老年人关怀系统”的子模块,实现的功能是:当检测到温度异常时,就向指定的监护人打电话或者发短信
二、所需设备
Sim900开发板、sim卡、单片机(STC12C5A60S2)、4根杜邦线
三、工作原理
单片机向Sim900发送AT命令,Sim900收到相应命令后执行相应的功能
四、开发前准备
1, 1 张中国移动 SIM 卡(未停机,并开通 GPRS 功能(否则不能测试 GPRS 功能) )2, 1 个外部直流电源(保证能给 SIM900A 提供 2A 电流)
五、连线
ATK-SIM900引脚定义:
SIM900:发送————STXD;接收————SRXD
串口助手或单片机:发送————RTXD,接收————RRXD
STC12C5460S2引脚定义:
串行口1: 发送————TxD/P3.1; 接收————RxD/P3.0
串行口2: 发送————TxD2/P1.3;接收————RxD2/P1.2
连接:
ATK-SIM900上的STXD与SRXD分别与STC12C5460S2上TXD/P3.1和RXD/p3.0相连
ATK-SIM900上的RRXD与RTXD分别与STC12C5460S2上的P1.3和P1.2相连
六、程序
/************************************************************
// File Name: main.c
*************************************************************/
/*程序说明:
本程序可以根据发送的命令的不同实现不同功能,为了便于看效果,我实现了向特定号码打电话,当然你可以改成短信等
1.我们的程序全部都是通过单片机串口2与SIM900通讯,串口1用于获得SIM900返回的数据
2.在开发板上放入您的手机卡,接好天线,打开电源,接入耳机。
3.把程序编译后下载到单片机中,使用STC—ISP下载,具体请参照教程。
4.这里,我只是简简单单的实验了下打电话,并且是持续打,没有什么控制,你可以改一下程序,比如按键控制*/
#include "stc12c5a.h"
#include "systerm.h"
#include "gprs.h"
#include "timer.h"
void main()
{
Timer0Init();
Uart1Init(0,1,253);//初始化串口,设置波特率115200
Uart2Init(0,1,253);//初始化串口,设置波特率115200
//启动Sim900要按下复位键大概3秒钟
GPRS_RST = 0;//Sim900 复位键拉低
DelaySec(3);//延时3秒
GPRS_RST = 1;//Sim900 复位键拉高
//Sim900启动完成
Uart2Sends("AT\r\n");
DelaySec(3);