Hallo knife,

was ich wollte ist, dass ich in einer tabelle (array) werte ablege (z.B.: 0001, 0010, 0011, ...) und anschließend diese werte nacheinander an die leds ausgeben, z.B. mit for-schleife. gibts denn sowas?
Man könnte das "klassisch" so machen:

Code:
'IIIIIIII Binärausgabe mit den 4 LEDs IIIIIIII
' Der Robby kann OHNE zusätzliche Hardware keine Werte (z.B.
' seiner Sensoren) anzeigen. Diese Routine gibt VALUE mit den
' 4 LEDs in Binärform (als 2 Nibble mit je 4 Bit) aus.
' Die Variable VALUE muss als BYTE definiert sein!
#LEDBINOUT 'Ausgabe 1. Nibble (low)
gosub LEDSOFF: gosub LED1FLASH: gosub LED1FLASH
gosub LED1FLASH: gosub LED1FLASH: gosub LED1FLASH
if (VALUE and &B1) <> 0 then gosub LED1ON
if (VALUE and &B10) <> 0 then gosub LED2ON
if (VALUE and &B100) <> 0 then gosub LED3ON
if (VALUE and &B1000) <> 0 then gosub LED4ON
pause 100 'Ausgabe 2. Nibble (high)
gosub LEDSOFF: gosub LED2FLASH: gosub LED2FLASH
gosub LED2FLASH: gosub LED2FLASH: gosub LED2FLASH
if (VALUE and &B10000) <> 0 then gosub LED1ON
if (VALUE and &B100000) <> 0 then gosub LED2ON
if (VALUE and &B1000000) <> 0 then gosub LED3ON
if (VALUE and &B10000000) <> 0 then gosub LED4ON
pause 100: return
#LED1FLASH
gosub LED1ON: pause 5: gosub LED1OFF: pause 5: return
#LED2FLASH
gosub LED2ON: pause 5: gosub LED2OFF: pause 5: return

'Binär-Dezimal-Tabelle (4-Bit):
' WERT:   0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15
' LED1->  0  1  0  1  0  1  0  1  0  1  0  1  0  1  0  1
' LED2->  0  0  1  1  0  0  1  1  0  0  1  1  0  0  1  1
' LED3->  0  0  0  0  1  1  1  1  0  0  0  0  1  1  1  1
' LED4->  0  0  0  0  0  0  0  0  1  1  1  1  1  1  1  1
'
' Der Dezimal-WERT kann in der 1. Zeile abgelesen werden, wenn man
' die zutreffende LED-Kombination aussucht (1 -> an, 0 -> aus).
' Der Wert des 2. Nibbles (high) kann genauso abgelesen werden,
' muss aber noch mit 16 multipliziert und zum 1. Nibble addiert
' werden, um den ganzen 8-Bit-Dezimalwert (0..255) zu erhalten.
VALUE enthält dann den auszugebenen Wert.

Gruß Dirk