Etape 6: Réglage de l’interruption qui lit la voie analogique
Nous pouvons mettre en place une interruption afin qu’un port analogique est lu à plusieurs reprises.
(Voir l’article d’Amanda pour plus de détails)
Mon « startad » sous-routine utilise un scalaire pre de 128.
Cela crée une interruption répétée que port A1 est continuellement mesurée à 9,4 KHz.
La sous-routine interruption a une double fonction :
1) si le compteur est moins le nombre de lectures :
- Ajouter l’octet de données audio à la mémoire tampon de 512 octets.
- Lorsque le tampon est plein, écriture de la mémoire tampon dans un aller à la carte SD - 512 octets est la taille optimale pour les sauvegardes de données rapides. Réinitialiser le compteur de mémoire tampon à zéro pour le prochain octet audio entrant.
2) lorsque le compteur est égal au nombre de lectures :
Arrêter l’interruption ne se reproduise
- Calculer combien de temps le processus a duré, fréquence etc..
- Utiliser la fréquence et taille du fichier à mettre à jour l’en-tête du fichier wave.
- Libérer le port analogique A1 et activez le port A0 afin que les boutons de l’écran lcd fonctionne.