Ce diapason permet de générer 7 notes :
- mi1 (mi grave de la 6ème corde)
- la1 (5ème corde)
- ré2 (4ème corde)
- sol2 (3ème corde)
- si2 (2ème corde)
- mi3 (mi aigu de la 1ère corde)
- la3 (440 hertz)
- Principe de fonctionnement
A l'aide de l'interruption du module TMR0 en mode timer, le microcontrôleur génère une temporisation d'une durée correspondant à la demi-période de la note.
Ainsi, pour avoir un sol2 (195,998 Hz), la temporisation est égale à 12755 cycles d'horloge (avec un quartz de 20 MHz).
Un bouton poussoir permet de sélectionner la note, en balayant du mi1 au la3.
La note active est visualisée par une LED (sorties RB1 à RB7).
Le bouton poussoir utilise l'interruption RB0/INT sur front descendant.
L'interruption RB0/INT est prioritaire sur l'interruption TMR0.
- Schéma électrique
N.B. On pourra remplacer le haut-parleur par un buzzer 5 volts (supprimer alors le condensateur C5).
- Résultats expérimentaux
note
|
hauteur
de la note (Hz)
|
fréquence
mesurée (Hz)
|
mi1
|
82,407
|
82,415
|
la1
|
110
|
110,011
|
ré2
|
146,832
|
146,847
|
sol2
|
195,998
|
196,019
|
si2
|
246,942
|
246,960
|
mi3
|
329,628
|
329,671
|
la3
|
440
|
440,025
|
Cet écart dépend principalement de la tolérance sur la fréquence du quartz.
Il est très inférieur à la limite de résolution de l'oreille humaine.
- Code source des microcontrôleurs
- 16F628A : Télécharger le code source en assembleur (.asm)
- 16F628A : Télécharger le code objet (.HEX)
(C) Fabrice Sincère ; Révision 1.2.6
Aucun commentaire:
Enregistrer un commentaire