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 :
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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; } }
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 :
Pourriez-vous m'apporter de l'aide ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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() { }
Cordialement
Partager