Le compteur asynchrone modulo 10
Nous vous proposons de créer et de simuler ensemble un compteur binaire BCD modulo 10 en utilisant deux circuits intégrés de la référence 74LS90 sous la solution de simulation en temps réel SimulIDE.
Pour réaliser cela, lançons-nous la solution de simulation et créons ensemble le montage électrique tel que nous le montre l'image ci-dessous :

A l'aide des 4 LED que nous avons montés à la sortie de ce circuit, écrivez les différents états logiques des différentes sorties de ce circuit. Puis, dessinez le diagramme d'état de ce montage.
Quels constats majeurs pouvez-vous formuler à la lumière de ces éléments ?
Réalisation et simulation : Le compteur asynchrone modulo 10
Modélisation du compteur asynchrone modulo 10 sous simulIDE
Comme nous le présente l'image ci-dessous, nous avons reproduit le schéma de l'énoncé de notre activité sous la solution SimulIDE :

Comme vous le constatez, nous avons relié ce circuit intégré 74LS90 comme suit :
- les deux entrées \(M_{S1}\) et \(M_{S2}\) à la valeur logique 0, soit la valeur 0V (ce qui équivaut la masse de notre cuircuit),
- les deux entrées \(M_{R1}\) et \(M_{R2}\) à un bouton poussoir, une fois activé ce bouton RESET, la valeur logique 1 sera injecté dans ces deux entrées,
- l'entrée \(CP_0 \) à un bouton poussoir, qui nous injectera la valeur 1 une fois le bouton poussoir H sera activé,
- l'entrée \(CP_1 \) sera reliée à la sortie \(Q_0\),
- Les 4 sorties \(Q_{0}, Q_1, Q_2\) et \(Q_3\) connectées respectivement à une diode LED.
Nous remarquons également que deux résistances d'une valeur de 100Ω ont été ajoutées respectivement entre :
- l'entrée \(CP_0 \) et son bouton poussoir H et,
- l'entrée \(M_{R1}\) et \(M_{R2}\) et le bouton poussoir RESET.
et ce pour protéger notre circuit contre les micro-variations lorsqu'on appuie sur l'un des deux boutons, qui peuvent être interprétés comme une suite logique de 0 et de 1. Ce mécanisme, appelé pull-down, fonctionne ainsi comme suit :
- lorsque le bouton n'est pas appuyé, la résistance relie l'entrée à la valeur logique 0, soit la masse du montage (0V), et
- lorsque le bouton est appuyé, l'entrée du circuit est alimentée par 5V avec un faible courant qui circulera dans la résistance reliée à la masse (dans notre montage un courant faible d'une valeur ≅ 25mA. Si vous souhaitez réduire cette valeur, il est fortement recommandé d'installer une résistance d'une valeur de 4.7KΩ voire 10KΩ.
Maintenant, pour trouver l'ensemble de ces composants dans la bibliothèque de notre outil de simulation SimulIDE, nous allons vous aider à localiser élément par élément pour modéliser notre circuit :
- Pour lire les 4 sorties de notre compteur BCD, nous allons utiliser quatre diodes LED qui seront reliéesà chaque sortie binaire \( Q_0, Q_1, Q_2\) et \( Q_3\) en série avec une résistance électrique d'une valeur de 220Ω. Nous nommons ces 4 diodes LED respectivement \(Q_0, Q_1, Q_2\) et \(Q_3\) pour une facilité de notre lecture tel que \( Q_0\) représente le LSB et \( Q_3\) représente le MSB. Pour trouver dans la bibliothèque, notre composant requis la diode LED, nous allons chercher le label "LED" dans la bibliothèque comme nous le montre l'image ci-dessous :

- trois résistances d'une valeur ohmique de 100Ω et 220Ω sont nécessaires pour notre montage. Ce composant est disponible dans la bibliothèque sous le nom "Resistance" dans la sous-catégorie "Resistors". La capture ci-dessous nous montre son icône dans la bibliothèque de composants :

- trois points de mise à la terre, le point de référence 0V pour notre circuit, que nous retrouvons facilement dans la bibiliothèque de composants sous le nom "Masse(0V)". L'image ci-dessous vous montre l'icône de ce composant:

- d'un circuit intégré 74LS90, un compteur asynchrone de type BCD. Pour placer ce circuit dans votre projet, vous devez chercher dans la bibliothèque de composants. Pour cela, tapez la référence "74XX90" (XX représente dans cette écriture HC, LS, etc). La capture ci-dessous nous montre cela :

- un bouton poussoir pour les deux fonctions RESET et Horloge. Ce composant est disponible sous le nom "Bouton poussoir" sous la catégorie "Interrupteurs". L'image ci-dessous nous présente ce composant :

Simulation sous simulIDE
Une fois la modélisation du schéma ci-dessus est correctement réalisée, il est temps de lancer la simulation. Pour cela, cliquez sur le bouton "Start Simulation". Pour vous rappeler comment fonctionne notre outil, à cet effet, la figure ci-dessous présente les différentes icônes présentes dans la barre simulation intégrée dans la solution SimulIDE.

Remarque : Si une erreur est présente dans notre projet et bloque le lancement du simulateur, un message d'erreur sera affiché "Output" que nous retrouvons sous la zone schématique de notre projet. Le simulateur s'arrête immédiatement et le mode d'exécution en temps réel n'est pas activé.
Simulation, exécution et lecture des différents valeurs affichées à la sortie du décompteur modulo 16
Après avoir démarré la simulation, nous allons actionner successivement le bouton poussoir H et observer, à chaque impulsion, la valeur binaire affichée en sortie du compteur 74LS90. La vidéo ci-dessous nous cela :
Ainsi, à partir des différentes valeurs des diodes LED \(Q_0, Q_1, Q_2, Q_3\), nous allons tracer le chronogramme dans un premier temps de ce compteur :

Maintenant, depuis ce chronogramme, nous pouvons lire les différents états de ce compteur comme suit :
- \( (0000)_{2} = (0)_{10}\)
- \( (0001)_{2} = (1)_{10}\)
- \( (0010)_{2} = (2)_{10}\)
- \( (0011)_{2} = (3)_{10}\)
- \( (0100)_{2} = (4)_{10}\)
- \( (0101)_{2} = (5)_{10}\)
- \( (0110)_{2} = (6)_{10}\)
- \( (0111)_{2} = (7)_{10}\)
- \( (1000)_{2} = (8)_{10}\)
- et le dernier mot binaire \( (1001)_{2} = (9)_{10}\)
Ce qui correspond exactement à un compteur binaire modulo 10 qui nous compte de la valeur binaire 0000 jusqu'à 1001. De cette manière, nous pouvons donc dessiner son diagramme d'état ci-dessous :

Comme nous l'avons lu lors de cette simulation, ce diagramme d'état commence par la valeur décimale 0, et incrémente ensuite à chaque impulsion de notre horloge H (le bouton poussoir que nous appuyons dessus à chaque fois) la valeur affichée de 1. Une fois le compteur affiche la valeur binaire 1001, soit l'équivalent en décimale à la valeur de 9, la valeur binaire 0000 est affichée, soit la valeur 0 en décimale, ce qui initialise son sycle de comptage.
Que concluons-nous ?
Nous concluons que nous avons réalisé un compteur asynchrone à l'aide du circuit intégré prêt le 74LS90 sous la solution SimulIDE. Ce compteur est capable de compter de la valeur binaire \( (0000)_2\) à la valeur binaire \( (1001)_2\); soit de \( (0)_{10}\) à \( (9)_{10}\) dans le système décimal.
Nous confirmons aussi que ces valeurs lues, les sorties du compteur, sont codées en BCD, un code dans lequel chaque chiffre décimal est codé dans le système binaire sur 4 bits.