Étape 5: Programmer le micro-contrôleur
J’ai utilisé l’IDE Arduino. Merci de soutenir ce projet excellent en faisant un petit don, si vous n'avez pas encore fait.
Raccorder le TX et le RX de votre clé USB Serial Converter aux broches série matériel de l’Atmega (2 et 3 respectivement). Télécharger le croquis ci-joint. Ouvrez-le dans IDE Arduino. Configurez votre Conseil d’administration et le port série. Remplacer le XXXXXXXXXXX dans le code avec votre numéro de téléphone par défaut. Compiler le croquis (ne pas envoyer). Maintenant, cela va être difficile si vous n’avez pas un RST sur votre clé usb à série. Placez vos doigts en continu sur l’interrupteur tact. Appuyez sur Télécharger IDE Arduino. Le milisecondes, vous voyez le statut « téléchargement » sur votre IDE Arduino Appuyez sur l’interrupteur tact pour réinitialiser le microcontrôleur et mettez-le en mode bootloader. Si vous ne réussissez pas à la fois, essayez plusieurs fois. Amusant, n’est-il pas ?
Le principe de fonctionnement global du firmware est la suivante :
- réveiller par une interruption (la boîte aux lettres est ouvert et l’interrupteur de contact tire la tige basse)
- faire un reset
- configurer le port série et épingles
- obtenir le numéro de téléphone du destinataire de l’EEPROM
- mesurer le niveau de batterie
- Allumez le module GSM
- garder demandant de spécifier le nom du fournisseur réseau. Une fois obtenu, le module peut envoyer des messages texte
- supprimer les anciens messages texte
- Envoyez le SMS de notification
- Attendez la confirmation de réception sur le port série ou timeout
- Vérifiez si le commutateur de configuration est en mode de configuration
- dans l’affirmative - attendez 40 secondes quand l’utilisateur peut envoyer un message texte contenant le mot « Programme ». Si un tel message arrive, stocker le nouveau numéro dans l’EEPROM
- rattacher l’interruption s’endormir
Lors de l’élaboration de ce croquis que j’ai utilisé la bibliothèque excellent avt/sommeil et le code d’ici http://playground.arduino.cc/Learning/ArduinoSleep... Pour SW le microcontrôleur de la réinitialisation, j’ai utilisé la solution WatchDog Timer brillant trouvée ici http://arduino.stackexchange.com/questions/1477/re...
Le fichier contient un grand nombre de lignes des commentaires de code que vous pouvez décommenter juste. Si vous préférez recevoir manqués à SMS (peut être moins cher), il existe une fonction commentée pour cela trop. Les commentaires dans le code vous aidera à savoir ce qui fait quoi.
Il est temps de tester la configuration. Pour le débogage, décommenter toutes les lignes Serial.print (n’oubliez pas de connecter les 14 et 15 à l’USB Serial converter).