1835|3

119

帖子

2

TA的资源

一粒金砂(中级)

楼主
 

【DFRobot无线通信模块】+GSM通信 [复制链接]

本帖最后由 xiyue521 于 2019-11-21 08:20 编辑




此内容由EEWORLD论坛网友xiyue521原创,如需转载或用于商业用途需征得作者同意并注明出处

说明:板子来源为EEWorld活动所得,由DFRobot提供。

产品链接:http://www.dfrobot.com.cn/goods-1442.html 、

 

1.初始化


#include <SoftwareSerial.h>
SoftwareSerial mySerial(11, 10);  // TX-Pin11, RX-Pin10
void updateSerial()
{
  delay(2000);
  while (Serial.available()) {
    mySerial.write(Serial.read());//如果Serial收到数据则通过mySerial输出
  }
  while(mySerial.available()) {
    Serial.write(mySerial.read());//如果mySerial收到数据则通过Serial输出
  }
  
}   

void setup()
{
  Serial.begin(9600);
  mySerial.begin(9600);
}

void loop()
{ 
  mySerial.println("AT");          //握手测试,成功则返回OK 
  updateSerial();
    
  mySerial.println("AT+CSQ");      //信号质量测试,值为0-31,31表示最好
  updateSerial();
    
  mySerial.println("AT+CCID");    //读取SIM,可以检测是否有SIM卡或者是否接触良好
  updateSerial();
  
  mySerial.println("AT+CREG?");    //检测是否注册网络
  updateSerial();    
 
  mySerial.println("AT+SNFS=0");  //调整为耳机模式(AT+SNFS=1 表示扬声器模式)   
  updateSerial();
     
  mySerial.println("AT+CRSL=2");  //调整音量,值为0-15,15表示音量最大
  updateSerial();
    
  while(1)
  { 
    if(mySerial.available()) 
    {
      Serial.write(mySerial.read());//如果mySerial收到数据则通过Serial输出
    }
    if(Serial.available())
    {
      mySerial.write(Serial.read());//如果Serial收到数据则通过mySerial输出
    }   
  }
}

 

2.通过Ardunio串口发送AT指令拨打和接听电话

ATD+拨打号码; //拨打指定号码

Ring //有来电

ATA //接听来电

ATH //挂断当前通话

 

3.发送短信


#include <SoftwareSerial.h>
SoftwareSerial mySerial(11, 10);  // TX-Pin11, RX-Pin10
void updateSerial()
{
  delay(2000);
  while (Serial.available()) {
    mySerial.write(Serial.read());//如果Serial收到数据则通过mySerial输出
  }
  while(mySerial.available()) {
    Serial.write(mySerial.read());//如果mySerial收到数据则通过Serial输出
  }
  
}   

void setup()
{
  Serial.begin(9600);
  mySerial.begin(9600);
}

void loop()
{ 
  mySerial.println("AT");          //握手测试,成功则返回OK 
  updateSerial();
  mySerial.println("AT+CMGF=1");   //配置短信模式为TEXT模式,只能发送英文短信! 
  updateSerial();
  mySerial.println("AT+CMGS=\"xxxxxxxxxxx\"");//xxxxxxxxxxx为电话号码
  updateSerial();
  mySerial.print("Hello, this is a test"); //短信内容
  updateSerial();
  mySerial.write(26);
  while(1)
  { 
    if(mySerial.available()) 
    {
      Serial.write(mySerial.read());//如果mySerial收到数据则通过Serial输出
    }
    if(Serial.available())
    {
      mySerial.write(Serial.read());//如果Serial收到数据则通过mySerial输出
    }   
  }    
}                    

 

此帖出自无线连接论坛

最新回复

你用的什么电话卡   详情 回复 发表于 2019-11-21 10:34
点赞 关注(1)
 

回复
举报

119

帖子

2

TA的资源

一粒金砂(中级)

沙发
 

1

此帖出自无线连接论坛
 
 

回复

257

帖子

0

TA的资源

一粒金砂(高级)

板凳
 

你用的什么电话卡

此帖出自无线连接论坛

点评

A6支持移动和联通  详情 回复 发表于 2019-11-21 23:12
 
 
 

回复

119

帖子

2

TA的资源

一粒金砂(中级)

4
 
viphotman 发表于 2019-11-21 10:34 你用的什么电话卡

A6支持移动和联通

此帖出自无线连接论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表