bonjour,
je viens de terminer mon alarme pour camion via arduino MEGA et module SIM 808
les fonctions de base :
activer alarme via un bip radio > je reçois un sms qui m'informe que l'alarme est mise par le bip
pareille pour désactiver l'alarme.
je peux également mettre et couper l'alarme a distance via un sms
Je reçois des sms et des appels de l'alarme si celle ci est déclenchée
et cerise sur le gateau j'arrive à recevoir les coordonnées gps !
Toute cela fonctionne bien ! MAIS ! j'utilise un string pour mes coordonnées GPS et malédiction du String .. il me shoot un boolean au passage... évidemment j'ai identifié le problème et je le remets via le programme .. mais c'est moche... même si cela fonctionne, j'aimerai beaucoup m'affranchir d'utiliser le STRING... le truc c'est que j'ai déjà lu et j'avoue ne pas comprendre grand chose aux tableaux de char... bref ... si quelqu'un pourrait m'éclairer ...
merci beaucoup d'avance :
voici le bout de code qui me fait la misère :
La fonction que j'appelle dans le programme principal
sendTabData("AT+CGNSINF", 1000, DEBUG);
void sendTabData(String command , const int timeout , boolean debug) {
GPRS.println(command);
long int time = millis();
while (time > (millis() - timeout)) {
textMessage = GPRS.readString(); /// AAAAAARG ! LE STRING qui tue
textMessage.remove(0, 58); // je retaille le string pour n'avoir que les coordonnées GPS
taille = textMessage.length();
textMessage.remove(18, taille);
textMessage.toCharArray(recept, 19);
recept[19]=char(26);
GPRS.print("AT+CMGS=\"");
GPRS.print(phone_no); // contient mon numéro de telephone
GPRS.println("\"");
delay(300);
GPRS.print("http://maps.google.com/maps?q=loc:");
GPRS.print(recept);
delay(200);
GPRS.println((char)26);
delay(1000);
GPRS.flush();
HEEEELP
merci d'avance