本帖最后由 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输出
}
}
}