Projet de fréquencemètre
Au cours du développement d'un système à micro contrôleur dans le cadre
de mon job, j'ai constaté être assez proche de ce qui pourrait être un
fréquencemètre très simple.
Ce féquencemètre peut être construit avec un AT89S2051, AT89S4051, AT89C2051, AT89C4051 ou même une version DIP 40 du 8051 (AT89C52 ...).
Le principe
Le principe de ce fréquencemètre est de compter les cycles issus d'une fréquence de référence durant une période ou bien un nombre connu de périodes du signal à mesurer
Le principe rapproché des possiblités offertes par un micro contrôleur
La porte reliant la source 1MHz est
conductrice durant une période complète du signal à mesurer, ce qui
correspond à la durée à "1" de la sortie "Q" de la bascule.
Le signal fin de comptage est tout simplement le front descendant de la
dite sortie.

La configuration du micro
contrôleur-fréquencemètre en ordre de
fonctionnement
Le
schéma de configuration du micro contrôleur montre l'utilisation qui
est faite du Timer T1.
Les bits GATE, TR1 et C/T configurent l'entrée /INT1 vis à vis du Timer
T1.
Le bit EX1 valide l'interruption matérielle de l'entrée /INT1 et le bit
IT1 fait générer l'interruption sur un front descendant.
Le fait que l'entrée /INT1 pilote la porte de transmission du signal 1MHz vers le timer élimine tout problème de timing lié à un traitement logiciel.
Le
code de l'interruption générée par le front descendant de /INT1 (fin
d'une période du signal à mesurer) copie les deux octets du compteur
matériel (TH1 et TL1) ainsi que les deux octets du compteur soft vers
un double mot exploitable par le niveau supérieur de
l'application.
Ce double mot représente la durée d'une période du signal à mesurer
exprimée en µs.
Les
quatre octets du compteur matériel de T1 et du compteur soft sont à
cette occasion remis
à zéro.
Les 16 bits de poids forts du compteur
Pour incrémenter le compteur soft,
l'interruption de débordement du timer est utilisée.
Avec une horloge à 12MHz, le signal entrant dans le compteur est de
1MHz.
Le débordement se produit donc toutes le 65,536 ms. Ceci est parfaitement compatible avec un traitement sûr de l'interruption dont le code d'incrémentation du compteur soft est de quelques µs.
Essai et résultats
Le fréquencemètre
est essayé et fonctionne.
A quelques Hz, la résolution affichée et exploitable est de 0.01Hz. A
1000Hz, la résolution exploitable est
de 1Hz.
Le fréquencemètre est constitué d'un
8051, d'un afficheur LCD, d'un 74LS74.
Le circuit de mise en forme se résume à un transistor NPN pour adapter
le 74LS74 à mon générateur BF.
La fréquence de référence est simplement le quartz connecté au 8051
dans la configuration basique.
A faire :
Utiliser un oscillateur 12MHz sérieux : colpitts ou bien TCXO 12.800MHz récupéré dans une radio.
Prévoir la possibilité de prélever le signal à mesurer dans une chaîne de diviseurs de façon à augmenter la période de mesure pour les fréquences élevées.