Téléphone : 09 83 00 63 69
[Tuto] Module GSM SIM800L - Envoyer un SMS
Posté sur: oct. 14, 2015
Catégories: Arduino
Pour voir le montage et la prise en main de ce module SIM800L, vous pouvez suivre le tuto sur cette page: Tuto SIM800L - Montage et prise en main
Le programme suivant utilise les AT commandes pour envoyer un SMS.
// Importation des librairies #include#include SoftwareSerial sim800l(7,8); // RX,TX boolean sms; void setup(){ // Début du setup sim800l.begin(9600); // Démarrage du modem Serial.begin(9600); // Initialisation de la communication série delay(500); // Délai pour la connexion sms = true; if(sim800l.available()) Serial.write(sim800l.read()); } void loop(){ // Début du loop if(sms==true){ sendsms(); sms = false; } } void sendsms(){ Serial.println("Sending text message..."); sim800l.print("AT+CMGF=1r"); // Lance le mode SMS delay(100); // Entrez votre numéro de téléphone sim800l.print("AT+CMGS="+3367617****"r"); delay(100); // Entrez votre message ici sim800l.print("Message ici r"); // CTR+Z en langage ASCII, indique la fin du message sim800l.print(char(26)); delay(100); sim800l.println(); Serial.println("Text send"); // Le message est envoyé. }
Ou pour modifier les informations (numéro de téléphone, message) dans le moniteur série :
// Importation des librairies #include#include SoftwareSerial sim800l(7,8); boolean sms; void setup(){ sim800l.begin(9600); // Démarrage du modem Serial.begin(9600); // Initialisation de la communication série delay(500); // Délai connexion sms = true; if(sim800l.available()) Serial.write(sim800l.read()); } void loop(){ if(sms==true){ // on ne passe qu'une seule fois dans le loop() sendsms(); sms = false; } } void sendsms(){ // set SMS mode Serial.println("SMS sender"); sim800l.print("AT+CMGF=1r"); // initialise le mode SMS delay(100); // phone number Serial.println("Enter the phone number :"); char number[20] ; readSerial(number); sim800l.print("AT+CMGS="); sim800l.print(number); sim800l.print(""r"); // message delay(100); Serial.print("Enter your message to send to : "); Serial.println(number); char message[200]; readSerial(message); sim800l.println(message); sim800l.print(char(26)); delay(100); sim800l.println(); Serial.print("Message : "); Serial.println(message); Serial.println("Text send"); } int readSerial(char result[]){ int i = 0; while (1) { while (Serial.available() > 0){ char inChar = Serial.read(); if (inChar == 'n') { result[i] = ''; Serial.flush(); return 0; } if (inChar != 'r'){ result[i] = inChar; i++; }}}}
Récapitulatif des commandes AT pour l'envoi d'un SMS
Commande | Réponse | Info |
AT+CMGF=1 | OK | Configure le mode SMS |
AT+CMGS="<numéro de telephone>" ENTER > Votre message CTR+Z | OK | Envoi un SMS au numéro indiqué |
Commentaires
nov. 23, 2018
oct. 23, 2018
oct. 23, 2018
août 13, 2018
févr. 9, 2018
mai 3, 2017
avril 9, 2017
avril 8, 2017
mars 10, 2017
janv. 18, 2017
mai 14, 2016
mai 11, 2016
mai 8, 2016
mai 8, 2016
avril 13, 2016
Connectez-vous pour commenter
Se connecter