Hallo Stefan,
Hier eine Bsp.-Routine für Schieberegister:
for i=7 ...>= 0 step -1 { ports.set(DS,(data shr i) and 1); ports.pulse(SHCLK); } ports.pulse(STCLK);
In diesem Bsp. werden 8Bit aus einer Byte-Variable(data) geschoben. DS, SHCLK und STCLK sind die 3 Ports an denen das Schieberegister hängt. Hier ein erweitertes Bsp. f. 5 Schieberegister(=40 Ports), wie Du es benötigts. Die Daten werden in einem Byte-Array gespeichert. (5Byte)
for j=4 ...=> 0 step -1 { for i=7 ...>=0 step -1 { ports.set(DS,(data[j] shr i) and 1); ports.pulse(SHCLK); } } ports.pulse(STCLK);
Byte0 Bit0 von data[] ist der erste Port Byte0 Bit1 ist der zweite .... Byte1 Bit0 ist der 9te ... usw.
MfG André H.
> Hallo Andrè. > > Danke für deinen Vorschlag. > > Kannst du mir zur ansteuerung des Schieberegisters > ein Beispielprogramm zeigen? > > (bei shl und shr kenne ich mich nicht so richtig aus) > > > zu meiner cc2: > > es ist nichts ausser SWCOM und HWCOM belegt, > > SWCOM für grafikdisplay > HWCOM für Steuerung eines Lichtcomputers ( Martin Lightjockey ) > > > mfg Stefan
|