Liaison de deux programmes
Bonjour,
je travaille actuellement sur un module GSM et un module SD. Mon but est de créer un identificateur d'appels avec les numéros stockés sur la carte SD. J'ai d'abord réalisé mon identificateur d'appels avec seulement mon module GSM et mon programme que voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
| #include <GSM.h> // Ajout de la librarie GSM
#define CODEPIN "" // Code pin du téléphone
GSM gsmAccess;
GSMVoiceCall vcs;
char numtel[20]; // Enregistre lappel entrant
char numerau[] = {"0603249714"}; // Numéro autorisé
int i;
void setup() {
// Initialise les communications serial et attend que le port s'ouvre:
Serial.begin(9600);
while (!Serial) {
; // Attente de connection du port serial. Nécessaire pour le port USB natif seulement
}
Serial.println("Initialisation..");
boolean notConnected = true; // Etat de connection
// Lancement GSM shield
while (notConnected) {
if (gsmAccess.begin(CODEPIN) == GSM_READY) {
notConnected = false;
} else {
Serial.println("Pas connecté");
delay(1000);
}
}
vcs.hangCall(); // Cela permet de sassurer que le modem signale correctement les événements entrants.
Serial.println("Vous pouvez appeler");
}
void loop() {
switch (vcs.getvoiceCallStatus()) { //Vérifier létat de lappel
case IDLE_CALL: // rien ne se passe
break;
case RECEIVINGCALL: // quelqu'un nous appelle
Serial.println("APPEL ENTRANT");
vcs.retrieveCallingNumber(numtel, 20); // recuperer le numéro appellant
// Afficher le numéro appelant
Serial.print("Number:");
Serial.println(numtel);
for (int i = 0; i < 9; i++) {
if (numtel[i+3] == numerau[i+1]) {
vcs.answerCall();
Serial.println("Numero autorise");
} else {
vcs.hangCall();
Serial.println("Numero non-autorise");
}
}
break;
}
} |
Je souhaiterai faire la meme chose mais que il lise le numéro autorisé sur mon fichier en .txt sur la carte SD au lieu qu'il soit dans le programme.
J'ai trouvé un programme tout fait qui permet de lire ce qu'il y a écrit sur le fichier .txt depuis la crate SD mais je n'arrive pas à lier les deux et faire l'identificateur..
Voici le porogramme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
#include <SPI.h>
#include <SD.h>
File myFile;
void setup() {
Serial.begin(9600);
Serial.println("Carte SD detectee...");
pinMode(10, OUTPUT);
if (!SD.begin(4)) {
Serial.println("Erreur de chargement.");
return;
}
Serial.println("Numeros autorisés :");
myFile = SD.open("numeros.txt");
if (myFile) {
while (myFile.available()) {
Serial.write(myFile.read());
}
myFile.close();
} else {
Serial.println("Erreur de lecture du fichier.");
}
}
void loop() {
} |
Pourriez-vous m'apporter de l'aide ?
Cordialement