Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SoftwareSerial.h>
- SoftwareSerial gsm(7, 8); // Piny 2 i 3 do komunikacji z SIMxxx
- String atCommand;
- String numerTelefonu;
- String trescSMS;
- void setup()
- {
- pinMode(9, OUTPUT);
- digitalWrite(9, HIGH);
- delay(500);
- digitalWrite(9, LOW);
- // Ustawiamy transmisje na 9600 bodow Arduino--PC
- Serial.begin(9600);
- // Czekamy na inicjalizacje
- while (!Serial) {}
- // Ustawiamy transmisje na 9600 bodow SIMxxx-Arduino
- gsm.begin(9600);
- }
- String odczytajNumerTelefonu()
- {
- String numer = "";
- Serial.println("Wpisz numer telefonu.");
- Serial.println(numer); /// wpisane z INTERNETU
- // Czekamy az wpiszemy cos w konsole
- while (!Serial.available()) {}
- // Odczytujemy z konsoli do zmiennej
- while (Serial.available())
- {
- delay(5);
- if (Serial.available() > 0)
- {
- char c = Serial.read();
- numer += c;
- }
- }
- return numer;
- }
- String odczytajTrescSMS()
- {
- String tresc = "";
- Serial.println("Wpisz tresc SMS.");
- // Czekamy az wpiszemy cos w konsole
- while (!Serial.available()) {}
- // Odczytujemy z konsoli do zmiennej
- while (Serial.available())
- {
- delay(5);
- if (Serial.available() > 0)
- {
- char c = Serial.read();
- tresc += c;
- }
- }
- return tresc;
- }
- void gsmAnswer(void)
- {
- // Czekamy az modul odpowie
- while (!gsm.available()) {}
- // Wyswietlamy odpowiedz
- while (gsm.available())
- {
- delay(5);
- if (gsm.available() > 0)
- {
- Serial.write(gsm.read());
- }
- }
- }
- // Wysylanie komendy AT
- void gsmCommand(String cmd)
- {
- gsm.print(cmd);
- gsm.print("\r");
- gsmAnswer();
- }
- // Wysylanie SMS
- void gsmSMS(String phone, String message)
- {
- gsmCommand("AT+CMGF=1");
- delay(100);
- gsmCommand("AT+CSCS=\"GSM\"");
- delay(100);
- gsmCommand("AT+CMGS=\""+phone+"\""); ///orginalnie przerzuca do drugiej lini myślnik
- delay(100);
- gsm.print(message);
- gsm.print((char)26);
- gsmAnswer();
- }
- void loop()
- {
- gsmCommand("AT");
- numerTelefonu = odczytajNumerTelefonu();
- trescSMS = odczytajTrescSMS();
- Serial.println();
- Serial.print("numerTelefonu=");
- Serial.println(numerTelefonu);
- Serial.print("trescSMS=");
- Serial.println(trescSMS);
- Serial.println();
- gsmSMS(numerTelefonu, trescSMS);
- Serial.println();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement