Etape 81 : Logiciel : VU Meter Mode
Vous remarquerez qu’il y a trois potentiomètres dans le circuit de l’amplificateur. Chacune de leurs fins sont énumérés ci-dessous, ainsi comme sur la photo #1.
VR1
Ce potentiomètre ajuste le gain de l’amplificateur. Si nous avons une plus grande résistance dans le potentiomètre, nous aurons moins de gain de l’amplificateur et vice versa. Si nous avons trop de gain, nous allons chercher le bruit dans le circuit, mais si nous avons trop peu d’avantages on ne ramassera pas beaucoup audio autour de la table. Cela peut prendre un peu de tâtonnement pour savoir quelle résistance fonctionne mieux, mais il ne devrait pas être trop critique. Nous pouvons également filtrer certains du bruit dans le logiciel trop en compensant la valeur reçue de ADC. Une résistance de 1kΩ fonctionne bien ici.
VR2
Ceci ajustera la sensibilité du microphone. J’ai trouvé que cela ne fait pas beaucoup de différence, si vous mettez dans une 10kΩ fixe la résistance au lieu d’un potentiomètre, il fonctionnera très bien.
VR3
Ceci ajustera l’amortissement du signal. Si nous définissons la résistance réelle faible, nous allons recevoir un grand nombre de valeurs d’ADC de nervosité. Par l’affectation d’une plus grande résistance, le signal audio DC converti alimentant le PIC sera beaucoup plus stable. Je trouve que cela empêche de 5kΩ à 10kΩ fonctionne le mieux.
Opération
Il y a trois principales fonctions compteur VU incluses dans le code source et tous suivent le même format de codage. Nous lisons dans la valeur de ADC audio du canal analogique AN2 avec la fonction Read_VU(void), nous plafonner la valeur de l’ADC à une valeur maximale de 31 qui nous donne 32 différentes intensités audio pour travailler avec (0 - 31). Nous pouvons programmer ensuite la table de ping-pong de bière de modifier tout élément sur la table à n’importe lequel de ces 32 niveaux d’intensité. Nous pouvons également augmenter ou diminuer la quantité de niveaux d’intensité de la valeur de l’ADC s’il faut. Avant que nous commencions à calibrer le VU-mètre, prendre un multimètre et régler les potentiomètres de près les valeurs que j’ai indiqué plus haut. Si VR3 est toujours défini sur 0Ω, vous assurer que ne serons pas voir un signal audio de l’amplificateur car il va être un court-circuit à la masse !
Calibrer le VU-mètre
Afin d’obtenir l’opération désirée dans le VU-mètre, nous allons devoir filtrer hors tout bruit indésirable qui se trouve sur la ligne de l’ADC. Que ce soit totalement calme dans la salle ou extrêmement fort, il y aura toujours un peu de tension sur la ligne de signal qui alimente le module ADC. Nous ne voulons pas la table de ping-pong de bière d’interpréter cette tension comme bruit audible, donc nous devons compenser la valeur de l’ADC.
Si vous allez dans le fichier LED_Graphics.h qui contient les prototypes de fonction pour les fonctions de compteur VU, vous verrez deux constantes appelées VU_SENSITIVITY et VU_OFFSET. Suivez les étapes ci-dessous pour calibrer le VU-mètre :
1) démarrer MPLAB IDE et charge le code source. Entrer dans la fonction principale et commentez le code actuel.
2) ajouter la fonction VU_Meter_Bar() dans la boucle principale (cela devrait être le seul code qui s’exécute dans la boucle principale). Générer le code et programmer le PIC sur le circuit imprimé principal.
3) Assurez-vous que la salle est entièrement automatisée et regarder la table de ping-pong de bière. Si une des lignes LED est sur, c’est parce que le VU-mètre se redresse de bruit du circuit.
4) si toutes les lignes de LED ont été tandis que la salle était complètement silencieuse, augmenter la constante VU_SENSITIVITY de 1. Reconstruire le code et reprogrammer le PIC. Continuez à faire ceci jusqu'à ce qu’il y a moins de 32 lignes de LED allumé quand il est muet dans la salle.
5) qu’il y a moins de 32 rangs allumés sur la grille de LED, obtenir une rude compter de combien de lignes sont toujours allumées. Aller à la constante VU_OFFSET et affectez-lui la valeur égale à la quantité de lignes qui sont allumées. Reconstruire et reprogrammer le code.
6) il doit être calibré maintenant et si vous mettez de la musique ou adressez vous devriez voir le VU-mètre répondent très bien à la basse et les basses fréquences. Si vous avez encore quelques lignes qui sont allumer quand la salle est silencieuse, simplement augmenter la valeur de VU_OFFSET jusqu'à ce que la grille est complètement effacée quand il est silencieux et vous serez prêt à partir !
Si vous ne pouvez pas obtenir toute réponse du VU-mètre, assurez-vous de vérifier la résistance à travers VR1 et VR2, VR3 sur le circuit imprimé Master et définissez-les proches des valeurs que j’ai posté ci-dessus. Si vous actionnez la fonction VU_Meter_Bar() et aucune ligne de LED ne s’allument lorsqu’il est silencieux, vous pouvez garder diminuant les valeurs VU_SENSITIVITY et VU_OFFSET jusqu'à ce que vous voyez peu de bruit, puis revenir en arrière un pas jusqu'à ce qu’il n’y a pas plus de bruit. Cela garantira que le VU-mètre est à sa sensibilité optimale. Les trois principales animations de compteur VU sont répertoriées ci-dessous.
VU_Meter_Bar(void)
Cette fonction s’allume à chaque ligne de la grille de la LED (32 rangs) indépendamment selon l’intensité sonore de la musique. Si le niveau sonore est comprise entre les valeurs 0 et 26, la couleur des gousses RVB sera verte. Si le niveau audio est supérieure à 26 et inférieure 31, la couleur des gousses RVB sera jaune. Lorsque le niveau audio plafonne à 31 la couleur de la RGB gousses sera rouges et les anneaux de LED sur le tableau seront également activés.
VU_Meter_Circle_Out(void)
Cette fonction va tracer un cercle au milieu de la grille de la LED et le rayon du cercle est déterminé par le niveau sonore du module ADC. Le rayon du cercle se dilate comme les augmentations de niveau audio et est calculé comme (niveau audio / 2). Si le niveau sonore est comprise entre les valeurs 0 et 26, la couleur des gousses RVB sera verte. Si l’intensité sonore est supérieure à 26 et inférieure 31, la couleur des gousses RVB sera jaune. Lorsque le niveau audio plafonne à 31 la couleur de la RGB gousses sera rouges et les anneaux de LED sur le tableau seront également activés.
VU_Meter_Pod_Color(void)
Cette fonction ajuste la couleur des gousses RGB en ce qui concerne l’intensité audio. S’il n’y a pas de son, les gousses de RVB seront allume faiblement en bleu. Plus l’intensité audio augmente, la couche rouge obtiendrez plus lumineuse et dépasser la couche bleue faiblement éclairée sur les gousses, dégageant une couleur rouge/rose. Lorsque le niveau audio plafonne à 31 les anneaux de LED sur le tableau est également activé.
Supprimer tout le code de la main() boucle while, introduisez l’une de ces animations et programmez-le de le tester ! Tous les trois de ces fonctions peuvent être vu dans la vidéo ci-dessous.