../../../icons/Logo.pngPraktische Elektronik


Wir betrachten einen einfachen Zähler.


list.png

Johnson-Zähler

Binärzähler


Johnson-Zähler

Mit dem vierfachen D-Register 74HC175 können wir einen einfachen Zähler aufbauen.

Attention >

Die folgenden Schaltungen haben einen Takt-Eingang, der an einen entprellten Taster angeschlossen werden muss. Dazu wird besten das Takt-Modul verwendet.

Mit dem Reset-Taster wird die Schaltung in einen definierten Zustand gebracht: Er setzt alle Ausgänge auf 0.

Der einfachste Zähler

Unser erster Versuch führt einfach den Ausgang Q1 auf den Eingang D1 zurück.

Zaehler-1.png
Bild 1: Einfacher Zähler mit 2 Zuständen

Wenn wir die Takt-Taste betätigen, wird jedes Mal der Zustand Q1 übernommen. Der Ausgang Q1 ändert sich mit jedem Takt: 0-1-0-1 usw. Die Schaltung kann zählen: kein Takt - ein Takt und dann beginnt sie wieder von vorne.

Zähler mit mehr Zuständen

Versuchen wir eine andere Schaltung. D2 übernimmt den Wert von Q1 und Q2 wird an D1 angelegt.

Johnson-Zaehler-2.png
Bild 2 Johnson-Zähler mit vier Zuständen
Attention note

Johnson-Zähler

Johnson-Zähler sind einfach und haben den Vorteil, dass sie leicht an bestimmte Teilerverhältnisse angepasst werden können.

Der CMOS 4018 ist ein fünfstelliger Johnson-Zähler. Er kann leicht auf die Teilerverhältnisse von 2 bis 10 eingestellt werden und hat einen Reset- und Preset-Eingang. Außerdem verfügt er eine Anti-Lock-Schaltung, die ihn immer wieder in die richtige Sequenz bringt.

Die Schaltung in Bild 2 liefert folgende Sequenz:

N Q1 Q2
0 0 0
1 1 0
2 1 1
3 0 1
0 0 0

Tabelle 1: Zustände des Johnson-Zählers mit vier Zuständen

Es werden vier Zustände angenommen. In der Tabelle wurden diese Zustände nummeriert. Es ist üblich, mit 0 zu beginnen. Die grauen Felder zeigen, wie die 1en durch den Zähler laufen.

Wir können diese Schaltung auf drei D-Register erweitern.

Johnson-Zaehler-3.png
Bild 3: Johnson-Zähler mit sechs Zuständen

Das Ergebnis ist ein Zähler mit sechs Zuständen:

N Q1 Q2 Q3
0 0 0 0
1 1 0 0
2 1 1 0
3 1 1 1
4 0 1 1
5 0 0 1
0 0 0 0

Tabelle 2: Zustände des Johnson-Zählers mit sechs Zuständen

Zähler mit 8 Zuständen

Fahren wir fort. Ein Johnson-Zähler mit vier D-Registern hat acht Zustände.

Johnson-Zaehler.png
Bild 4: Johnson-Zähler mit acht Zuständen
Attention work

So geht's (1)

Die folgende Zeile der Tabelle ergibt sich:

  • Der Eintrag in der ersten Spalte ist der invertierte Wert der letzten Spalte der vorhergehenden Zeile.
  • Jede weitere Spalte enthält den Wert der vorhergehenden Spalte der vorhergehenden Zeile (oben links).
N Q1 Q2 Q3 Q4
0 0 0 0 0
1 1 0 0 0
2 1 1 0 0
3 1 1 1 0
4 1 1 1 1
5 0 1 1 1
6 0 0 1 1
7 0 0 0 1
0 0 0 0 0

Tabelle 3: Zustände des Johnson-Zählers mit acht Zuständen

Interessant wäre ein Zähler mit 10 Zuständen. Wir benötigen ein weiteres D-Register und einen weiteren 74HC175. Die Takteingänge der beiden 74HC175 werden parallel geschaltet, ebenso wie der Reset-Eingang. Es geht aber auch einfacher, wenn wir den weiter unten beschriebenen CMOS 4018 verwenden.

Attention pin

Schieberegister

Der Johnson-Zähler beruht auf einem Schieberegister. Alle Register sind in Reihe geschaltet. Der Eingang wird auf einen invertierten Ausgang des Schieberegisters gelegt. Alle Register haben den selben Takt.

Impulse zählen

An dieser Stelle betrachten wir, wie der Zähler die Takt-Impulse eines NE555 zählt.

Wir schließen einfach den Taktgenerator aus Blinkende LED an den Johnson-Zähler mit acht Zuständen an.

Laufender-Johnson-Zaehler.png
Bild 5: Johnson-Zähler an einem Taktgenerator.

Der Takt läuft so langsam, dass wir die einzelnen Zustände des Zählers gut verfolgen können. Wir können die Taktfrequenz natürlich auch erhöhen. Dann fangen die LEDs an zu flackern und bei noch höherer Frequenz leuchten sie immer.

Frequenzteiler

Die Frequenz der LEDs an den Ausgängen des Johnson-Zählers ist niedriger als die Taktfrequenz. Die Anzeige wiederholt sich alle acht Takte. Sie besteht für jeden Ausgang aus einer Folge von vier Einsen und vier Nullen. Die Frequenz an den Ausgängen des Johnson-Zählers ist also f / 8.

Bei einem Johnson-Zähler mit N D-Registern ist die Ausgangsfrequenz fo = f / ( 2 * N ).

Attention attention

Der Reset ist wichtig, weil unser Johnson-Zähler außer Tritt geraten kann, wenn zufällig die Kombination Q1=1, Q2=0 und Q3=1 auftritt.

  • Welche Zustände treten dann im Johnson-Zähler auf?

Regeln

Ein Johnson-Zähler

  • besteht aus N D-Registern,
  • deren Eingang mit dem Ausgang des vorhergehenden D-Registers verbunden ist.
  • Der Eingang des ersten D-Registers ist mit dem invertierten Ausgang des letzten D-Registers verbunden.
  • hat 2 * N Zustände,
  • teilt die Taktfrequenz f durch N: fo = f / ( 2 * N),
  • liefert an jedem Ausgang eine symmetrische Folge von
  • N Nullen und
  • N Einsen,
  • muss durch Reset initiiert werden.
  • Ein Johnson-Zähler kann eigentlich nur gerade zählen
  • Mit einem Trick kann er auch ungerade zählen (siehe CMOS 4018 weiter unten).
  • Die Folge der Nullen und Einsen ist dann nicht gleich lang.

Dekodierung der Zustände

Tabelle 3 zeigt, dass jeder Nummer des Johnson-Zählers ein bestimmtes Zustands-Muster zugeordnet ist. Diese Nummer können wir uns auch als Zahl vorstellen.

Wenn wir für jede Zahl eine LED aufleuchten lassen wollen, brauchen wir eine Logik, die die Zustands-Muster dekodiert.

Dieser Decoder ist relativ einfach. Wir benötigen für jede Zahl ein AND-Gatter mit zwei Eingängen.

X0 = Q1 AND Q4
X1 = Q1 AND Q2
X2 = Q2 AND Q3
X3 = Q3 AND Q4 
X4 = Q1 AND Q4 
X5 = Q1 AND Q2
X6 = Q2 AND Q3
X7 = Q3 AND Q4

Der vierstufige Johnson-Zähler kann von 0 bis 7 zählen.

Attention >

Ein ewiger Streit

Wo fangen wir an zu zählen?

  • Bei 0?
  • Bei 1?

Johnson-Zähler mit CMOS 4018

Der CMOS 4018 enthält einen 5-stufigen Johnson-Zähler.

Mit dem CMOS 4018 kann auf einfache Weise ein Zähler mit verschiedenen Divisionsquotienten realisiert werden. Dazu muss der Eingang D mit den Ausgängen Q0 bis Q4 logisch verknüpft werden:

Division durch D an
10 Q4
9 Q4 AND Q3
8 Q3
7 Q3 AND Q2
6 Q2
5 Q2 AND Q1
4 Q1
3 Q1 AND Q0
2 Q0̅

Tabelle 4: Logik am Eingang D des Johnson-Zählers CMOS 4018 für verschiedene Divisionsquotienten

Nur für die Division durch 9, 7, 5 und 3 ist ein AND-Gatter erforderlich.

Johnson-Zaehler-4018.png
Bild 6: Zähler für die Division durch 10 und 5

Mit Dioden

Johnson-Zaehler-4018-Dioden.png
Attention work

So geht's hier

  • In der letzten Spalte der aktuellen Zeile Q1 AND Q2 eintragen.

Die folgende Zeile der Tabelle ergibt sich wie oben bei So geht's (1) beschrieben.

N Q0 Q1 Q2 Q1 AND Q2
0 1 1 1 1
1 0 1 1 1
2 0 0 1 0
3 1 0 0 0
4 1 1 0 0
0 1 1 1 1

Tabelle 5: Zustände eines Johnson-Zählers mit fünf Zuständen

Die Ausgänge Q3 und Q4 sind für einen Johnson-Zähler mit fünf Zuständen irrelevant. Am Ausgang Q2 ergibt sich eine Folge von drei Einsen und zwei Nullen.

Anti-Lock-Schaltung

Wir betrachten einen Johnson-Zähler mit 10 Zuständen. Er zählt also von 0 bis 9. Beim CMOS 4018 wird dazu der Ausgang Q4 auf den Eingang D zurückgeführt.

Attention work

Hier geht's

wie oben bei So geht's (1) beschrieben.

N Q0 Q1 Q2 Q3 Q4
0 1 1 1 1 1
1 0 1 1 1 1
2 0 0 1 1 1
3 0 0 0 1 1
4 0 0 0 0 1
5 0 0 0 0 0
6 1 0 0 0 0
7 1 1 0 0 0
8 1 1 1 0 0
9 1 1 1 1 0
0 1 1 1 1 1

Tabelle 6: Die zehn korrekten Zustände eines Johnson-Zählers

Wenn sich der Zähler jedoch in einem fehlerhaften Zustand befindet, können alle nachfolgenden Zustände fehlerhaft sein. Dieses kann z.B. der Fall sein, wenn der Zähler nach dem Einschalten der Stromversorgung nicht zurückgesetzt wurde.

Attention work

Hier geht's

wie oben bei So geht's (1) beschrieben.

Z Q0 Q1 Q2 Q3 Q4
0 1 1 0 1 0
1 1 1 1 0 1
2 0 1 1 1 0
3 1 0 1 1 1
4 0 1 0 1 1
5 0 0 1 0 1
6 0 0 0 1 0
7 1 0 0 0 1
8 0 1 0 0 0
9 1 0 1 0 0
0 1 1 0 1 0

Tabelle 7: Johnson-Zähler mit 10 fehlerhaften Zuständen

Alle zehn auftretenden Zustände sind fehlerhaft. Am Ausgang Q4 liegt eine Folge mit der Frequenz f / 3 an.

Der Johnson-Zähler des CMOS 4018 enthält eine Anti-Lock-Schaltung, die verhindert, dass ein zufällig fehlerhafter Zustand von Q0 bis Q4 zu einer fehlerhaften Zählfolge führt. Beim Johnson-Zähler wird normalerweise der Ausgang einer Stufe auf die nächste Stufe geschaltet. Beim CMOS 4018 wird der Eingang D2 für Q2 durch eine Logik bestimmt:

D2 = NOT ( ( Q0 AND  Q2 ) OR  Q1 )
Attention work

So geht's hier

  • In der aktuellen Zeile in der vorletzten Spalte Q0 AND Q2 eintragen.
  • In der aktuellen Zeile in der letzten Spalte den Wert aus der vorletzten Spalte OR Q1 eintragen.

Die folgende Zeile der Tabelle ergibt sich:

  • Der Eintrag in der ersten Spalte Q1 ist der invertierte Wert der Spalte Q4 der vorhergehenden Zeile.
  • Der Eintrag in der ersten Spalte Q2 ist der Wert der letzten Spalte der vorhergehenden Zeile.
  • Alle übrigen Spalten enthalten den Wert der vorhergehenden Spalte der vorhergehenden Zeile (oben links).
  • Achtung: In der letzten Spalte steht nicht D2, sondern D2, aber das ist genau der Wert, der in die Spalte von Q2 eingetragen wird.
Z Q0 Q1 Q2 Q3 Q4 Q0 AND Q2 ( Q0 AND Q2 ) OR Q1
F0 1 1 0 1 0 0 1
F1 1 1 1 0 1 1 1
4 1 1 1 1 0 1 1
5 1 1 1 1 1 1 1
6 0 1 1 1 1 0 0
7 0 0 1 1 1 0 0
8 0 0 0 1 1 0 0
9 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0
2 1 1 0 0 0 0 1
3 1 1 1 0 0 1 1
4 1 1 1 1 0 1 1
5 1 1 1 1 1 1 1
6 0 1 1 1 1 0 1
7 0 0 1 1 1 0 0
8 0 0 0 1 1 0 0
9 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0

Tabelle 8: Zustände eines Johnson-Zählers mit Anti-Lock-Schaltung

Tabelle 8 zeigt, dass der Johnson-Zähler nach einigen fehlerhaften Zuständen in eine korrekte Folge gebracht wird.

Aufgrund der Anti-Lock-Schaltung kann beim CMOS 4018 auf einen initialen Reset verzichtet werden. Allerdings kann es zu Beginn zu einigen fehlerhaften Zuständen kommen. Dieses kann für einen Zähler nicht akzeptabel sein und ein Reset ist erforderlich.

Ringzähler

Ein Ringzähler beruht wie der Johnson-Zähler auf einem Schieberegister. Der Ringzähler benötigt keinen Decoder zur Ermittlung der Zustandsnummer. Es gibt immer nur einen Ausgang des Ringzählers, der 1 ist.

Die Schaltung kennen wir bereits, es ist ein Schieberegister mit einer umlaufenden 1. Diese Schaltung haben wir in Lauflicht betrachtet. Wir benötigen zwar keine Decoder, aber wir müssen die erste 1 beim Reset erzeugen.

Regeln

  • Ein Ringzähler mit N Registern kann von 0 bis N-1 oder von 1 bis N zählen.
  • Ein Johnson-Zähler mit N Registern kann von 0 bis 2*N-1 oder von 1 bis 2*N zählen.