arduino 控制sim900A发送短信
Posted kekeoutlook
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arduino 控制sim900A发送短信相关的知识,希望对你有一定的参考价值。
狗屎佳世通旗舰店,卖的什么破玩意sim900a芯片,不支持联通卡,还生明模块支持双卡的
之前买的esp8266-07都是内存偷工减料
买的液体浊度传感器给的原理图也不给基本接线。
差评垃圾店,你敢卖就别怪我吐槽。耽误我这么多时间。
1 只能发送英文
#include<SoftwareSerial.h> SoftwareSerial softSerial1(4,5);//软串口RXD4、TXD5,与短信模块通信 int sendMeg(String phonenum,String text)//发送信息的函数,直接调用即可,无需修改 { char comdata=0;//判断接收到的最后一位是否对 String phone="";//电话号码存储 phone="AT+CMGS=""+phonenum+‘"‘; while (softSerial1.available() > 0){ comdata = softSerial1.read(); //每次读一个char字符,并相加 delay(2); } softSerial1.println("AT");//对GSM发送AT,看响应 delay(1000); while (softSerial1.available() > 2){ comdata = softSerial1.read(); //每次读一个char字符,并相加 Serial.print(comdata);//错误 delay(2); } if(comdata!=‘K‘)//判断没有收到OK { Serial.println("error1");//错误 // return 0; } comdata=0; softSerial1.println("AT+CMGF=1");//设置GSM文本模式 delay(500); while (softSerial1.available() > 2){ comdata = softSerial1.read(); //每次读一个char字符,并相加 delay(2); } if(comdata!=‘K‘)//没有收到OK { Serial.println("error2"); // return 0; } comdata=0; softSerial1.println(phone);//发送的目标号码 delay(1000); while (softSerial1.available() > 1){ comdata = softSerial1.read(); //每次读一个char字符,并相加 delay(2); } if(comdata!=‘>‘)//没有收到> { Serial.println("error3"); // return 0; } comdata=0; softSerial1.print(text);//发送所写内容 delay(500); softSerial1.write(0x1A); //结束输入文本,并发送 Serial.println("success"); //成功 } // for循环若收不到消息会卡死 暂时用来看逻辑 int sendsim2(String phone_num,String text,SoftwareSerial &p_serial) { p_serial.println("AT"); delay(500); p_serial.println("AT+CSCS="GSM""); delay(500); p_serial.println("AT+CMGF=1"); delay(500); p_serial.print("AT+CMGS=""); p_serial.print(phone_num); p_serial.println("""); // Serial.println("1"); //for(;p_serial.read()!=‘>‘;) ; // Serial.println("1"); p_serial.print(text); delay(500); p_serial.write(0x1A); delay(500); p_serial.flush(); delay(100); } void setup(){ //硬串口 Serial.begin(9600); //监听软串口通信 softSerial1.begin(9600); softSerial1.listen(); } void loop(){ sendMeg("15529672865","Water logging alarm of No.2 well of 110kV gold lead cable tunnel, please handle it quickly");//给15147300333 发送信息 // sendsim2("15529672865","ddd",softSerial1); delay(5000); }
以上是关于arduino 控制sim900A发送短信的主要内容,如果未能解决你的问题,请参考以下文章