Diese Schaltung ist ein Anzeige-/Eingabemodul bestehend aus vier 7-Segment Ziffern, einer zusätzlichen rot-grün LED-Anzeige und zwei Tastern. Während man für die Ansteuerung von vier 7-Segment Ziffern sonst eine Menge Prozessor-I/O's verbraucht oder dies über diskrete Logik reduzieren muss, wird diese Anzeige über ein einfaches serielles Protokoll mit 3 Signallinien angesteuert.
"Displaycontroller" ist in diesem Fall ein XC9536 CPLD wodurch der 4-Bit Zeichensatz frei programmierbar ist.

Der CPLD steuert die 4 Ziffern jeweils sequentiell an, indem er die einzelnen common-anode Pins der Ziffern (Z0-Z3) nacheinander durchschaltet. Gleichzeitig legt der CPLD die entsprechende Zifferndekodierung auf die Ausgänge P, A-G. Geschieht die sequentielle Durchschaltung schnell genug, entsteht der Eindruck als würden alle Ziffern gleichzeitig angezeigt. Den entsprechenden Durchschalttakt erzeugt die Schaltung um IC3.
Das Protokoll sieht vor, dass die Ziffern in der Reihenfolge Z0...Z3 mit jeweils 5 Bit übertragen werden, wobei das erste Bit den Zustand des jeweiligen Dezimalpunkts und die folgenden 4 Bit den Zifferncode (LSB first) darstellen. Während der Übertragung muss das BSY Signal low gesetzt sein. Nach dem Transfer der 4. Ziffer geht BSY high. Der Zustand des DAT-Signals zum Zeitpunkt des BSY rise bestimmt den Zustand des OUTLED-PINs, wodurch entweder die rote oder die grüne Anzeige-LED leuchtet. Ein Code-Beispiel für die Ansteuerung findet sich im PIC-Code des Ballerbox-Rechners.
Zusätzlich befindet sich in der Schaltung nur noch die separate 3,3V Spannungsversorgung für den CPLD (die Eingangspins sind 5V tolerant) und die zwei Tasten mit entsprechender Entprellung.

Anzeigemodul mit CPLD Controller Schaltplan des Anzeigemoduls

CPLD-Firmware des Anzeigemoduls