In einer Arduino-Referenz (nicht die Orginal-) wird dazu das beschrieben:
shiftOut()
Beschreibung
Gibt ein Bit einer Bytevariablen an einem Port aus.
Beginnt entweder von links (Most Significant Bit) oder
von rechts (Least Significant Bit). Jedes Bit wird auf
einen Data-Pin geschrieben, nachdem ein Clock-Pin getaktet
wurde (auf high setzen, dann wieder auf low), welches anzeigt,
dass das Bit verfügbar ist. Es kann immer nur ein Bit auf
einmal ausgegeben werden. Sollen also alle acht Bits eines
Bytes geändert werden, ist dieser Befehl acht Mal auszuführen.
ich will ja kein Bit dieses Byte's ändern , nur seriell ausgeben, etwas missverständlich

ein Codeschnipsel:
Code: Alles auswählen
......
// LSBFIRST serial
data = 500;
shiftOut(dataPin, clock, LSBFIRST, data); // shift out lowbyte
shiftOut(dataPin, clock, LSBFIRST, (data >> 8)); // shift out highbyte
......
automatisch Bit für Bit seriell ausgegeben oder muss man den in eine (8x) Schleife packen ?
Das soll ein Anschluss an ein MAX7219- 8 x 7-Segment-Platine werden. Da gibt es natürlich einige Lib's aber diese funktionieren nicht korrekt.
Also will ich das mal über shiftOut probieren.
Gruss
Ludwig