Hallo starkeeper!

Ich habe mal was geschrieben gehabt das ähnlihc funktioniert. Ein CD4094 der das selbe ist in CMOS-Technik. Den habe ich an einem PIC-AXE hängen. Habe aus Portmangel das eben auch erweitert gehabt mit zwei Standard-Pins. Das war mein Code dazu wenn man Ausgänge mit dem Bytewert belegt hat einfach diese Routine aufrufen und das Schieberegister macht die Ausgabe der Variablen an den Pins. Ist auch mit drei Leitungen (Data, Clock und Strobe) relisiert wie bei dir.

Code:
' **************************************************************
' * Schieberegister-Verwaltung                                 *
' **************************************************************

ShiftRegSet:
  ' Schieberegister mit Daten laden (8-Bit)
  TempByte = Ausgaenge
  For i = 1 To 8
    Low ShrData1
    Low ShrData2
    If TempByte < 128 Then GoTo ShiftRegSet2
    High ShrData1
ShiftRegSet2:
    PulsOut ShrClock1, 1           ' 10µs-Impuls
    'PulsOut ShrClock2, 1           ' 10µs-Impuls
    Low ShrData1
    TempByte = TempByte * 2
  Next i
  PulsOut ShrStrobe, 2             ' 20µs Ausgänge übernehmen
  Return
Grüße Wolfgang