2023
HOME

Ergänzung zum Buch: MSR mit Arduino und Compact
Sieben-Segment-Anzeige
Digitaltechnik am eigenen Schreibtisch: Steuerung mit Compact Red Needle

Bit-Schreiber Red NeedleEine 7-Segment-Anzeige besteht aus sieben LED, die so angeordnet sind, dass damit Zahlen darstellbar sind. Sind alle Kathoden (GND) miteinander verbunden, so reichen 8 Leitungen, um die sieben Segmente einzeln anzusteuern.

Die Segmente tragen meist die Buchstaben a bis g, wobei Segment a der obere Querbalken, und Segment g der mittlere Querbalken ist. Das Alphabet wird im Uhrzeigersinn durchlaufen.

Die Abbildung zeigt die Zahl 5 mit den Segmenten a, c, d, f und g. Diese sind direkt und ohne Widerstand mit den Ausgängen des Arduino Uno R3 verbunden. Eine direkte Verbindung der LED mit 5 V und GND zerstört die Anzeige allerdings. Nur die Digitalausgänge begrenzen den Strom und lassen den widerstandslosen Betrieb bei dieser Anzeige zu.


												

Tabelle für 10 Ziffern
Mit den Digital Ausgängen Bit 0 bis Bit 6 von Compact Red Needle lassen sich die sieben Segmente einzeln ansteuern. Die folgende Tabelle gibt das Zusammenspiel der Komponenten an. Bit 0, am Arduino D10, schaltet Segment a.

Arduino

A4

A3

A2

13

12

11

10

Compact

6

5

4

3

2

1

0

Segment

g

f

e

d

c

b

a

0

O

I

I

I

I

I

I

1

O

O

O

O

I

I

O

2

I

O

I

I

O

I

I

3

I

O

O

I

I

I

I

4

I

I

O

O

I

I

O

5

I

I

O

I

I

O

I

6

I

I

I

I

I

O

I

7

O

O

O

O

I

I

I

8

I

I

I

I

I

I

I

9

I

I

O

I

I

I

I

Die Segmente lassen sich im Tab Ein-/Ausgänge entsprechend der angegebenen Tabelle als Ziffern darstellen.


Programm binär oder dezimal
Das angegebene Programm verwendet die binäre Schreibweise mit O und I für die Ausgänge. Dadurch entspricht das Listing quasi der Tabelle. Ein Zip-Archiv enthält beide cpf-Dateien.

PROGRAMM
 Ausgänge = OOOOOOO
 Schreibe   GFEDCBA
 Wiederhole
 	Ausgänge = OOOOIIO
 	Ausgänge = IOIIOII
 	Ausgänge = IOOIIII
 	Ausgänge = IIOOIIO
 	Ausgänge = IIOIIOI
 	Ausgänge = IIIIIOI
 	Ausgänge = OOOOIII
 	Ausgänge = IIIIIII
 	Ausgänge = IIOIIII
 	Ausgänge = OIIIIII
 Bis Tastendruck
ENDE.

Durch Umwandlung der Dualzahlen in Dezimalzahlen entsteht ein anderes Listing, wobei hier zusätzlich die Zählweise umgedreht wurde und der Zähler rückwärts funktioniert.

PROGRAMM
 Wiederhole
 	Ausgänge = 111
 	Ausgänge = 127
 	Ausgänge = 7
 	Ausgänge = 125
 	Ausgänge = 109
 	Ausgänge = 102
 	Ausgänge = 79
 	Ausgänge = 91
 	Ausgänge = 6
 	Ausgänge = 63
 Bis Tastendruck
ENDE.

Das Kapitel 6.1 geht auf diese Zahlensysteme kurz ein. Hier ein Ausschnitt:

6.1 DUALZAHLEN UND BITS

Das binäre Zahlensystem mit seinen Dualzahlen stellt eine Basis der Digitaltechnik dar. Mit zwei Zuständen lassen sich alle ganzen Zahlen ausdrücken. Die 8 Bit, aus denen sich ein Byte zusammensetzt, kennen nur die logischen Zustände 1 und 0.

Bit	7	6	5	4	3	2	1	0
Potenz	27	26	25	24	23	22	21	20
Wert	128	64	32	16	8	4	2	1

Soll an den Digital-Ausgängen nur Bit 7 ganz links logisch 1 sein, so müssen die Ausgänge den Wert 128 aufweisen. In dualer Schreibweise entsteht das Muster bzw. die Schreibweise 1000000BIN. Dies gilt entsprechend für die Ausgänge.

Der binäre Zahlenwert setzt sich also aus der Summe der Werte gesetzter Bits in einem Byte zusammen. Ein Bitmuster 10101010BIN entspricht somit der Dezimalzahl 128 + 32 + 8 + 2 = 170. Das Bit mit der höchsten Wertigkeit MSB ist also Bit 7, wohingegen Bit 0 das niederwertige Bit LSB darstellt. Der Dezimalwert erscheint jeweils unterhalb der digitalen Ein- und Ausgänge.

Obige Zeilen ergänzen die Ausführungen in Kapitel 6, in dem das Thema Digitaltechnik mit solchen Aufbauten praxisnah am eigenen Schreibtisch bearbeitet werden kann. Das 2022/23 erschienene Messen, Steuern und Regeln mit Arduino und Compact zeigt was mit der freien Software Compact Red Needle noch alles möglich ist.


												

												


Compact Red Needle
MSR mit Arduino & Compact
Mehr Software

.
Startseite Bücher Software Digital RTV Musik Kontakt

Für Inhalt und weitere Verzweigung externer Links sind die Betreiber der dortigen Seiten verantwortlich - H.-J. Berndt