Étape 6: Effets de lumière aperçu et les fichiers du logiciel
Deux microprocesseurs de 12F683 PIC distinctes génèrent des effets de lumière, un pour les feux verts clignotants et l’autre pour les lumières jaunes et rouges qui clignotent en synchronisation avec les effets de voix.Les deux programmes ont été écrits dans l’assembly à l’aide d’outil MPASM Microchip qui est gratuit sur leur site Web.
L’assemblé *.hex fichier et fichier source *.asm pour chaque programme est inclus ici, ainsi qu’un diagramme haut niveau montrant le fonctionne de chaque programme. Les fichiers *.asm contiennent aussi beaucoup de commentaires tout au long expliquant le fonctionnement du programme.
Le fonctionnement général de chaque programme est la suivante.
Clignotant feux verts
Le programme en cours d’exécution sur le processeur qui génère les effets de lumière verte clignotante juste extrait les paramètres de LED d’un tableau de 20 États différents. Chaque État est affiché pour 300 millisecondes, et ensuite l’état suivant est levé de la table et afficher, et ainsi de suite. La programme effectue une boucle sur la table pour toujours, donnant l’impression que les lumières clignotent aléatoirement.
Lumières de synchronisation vocale
Le programme en cours d’exécution sur le processeur qui génère les lumières qui clignotent en synchronisation avec les effets de voix échantillonne l’audio en utilisant le convertisseur A/D interne de processeurs. De chaque échantillon, l’amplitude de l’onde audio est déterminée, et il est comparé à une valeur seuil. Si la magnitude est supérieure au seuil, la sortie numérique est réglée en haute, sinon il a la valeur faible.
Le seuil est réglable par l’intermédiaire de la tension sur une autre entrée au microprocesseur. L’entrée A/D est utilisée pour lire la tension sur l’entrée et le résultat est utilisé pour déterminer le seuil. Le programme intègre également une hystérésis dans le processus de comparaison de grandeur.
Ce programme produit également deux sorties supplémentaires qui ne sont pas utilisés dans les effets de lumière sur le modèle, mais peuvent être utile à d’autres fins. La première est tout simplement une sortie numérique qui est le complément de celui utilisé pour exciter la voix LEDs. Cette sortie est haute quand l’autre est faible et vice versa. Ce serait utile si une sortie inversée était nécessaire, afin que la sortie était faible lorsque le signal audio est plus grand que le seuil.
La seconde sortie inutilisée utilise le module PWM de processeurs pour produire un signal PWM, qui a le devoir de cycle proportionnelle à l’amplitude du signal audio.