Bei meinen ersten Tests des neuen Robby möchte ich gern Messwerte der Sensoren als genauen Wert ermitteln. Da ich keine Erweiterungsplatine mit LC-Display habe, habe ich das 'mal mit den 4 LEDs als Binärausgabe gemacht:
Diese Demo (Code-Ausschnitt ohne Definitionen und Init) stellt alle Zahlen von 0 bis 255 nacheinander dar, wobei nach dem Blinken der LED1 die ersten 4 Bit, nach dem Blinken der LED2 die Bits 5 bis 8 kurz gezeigt werden.Code:' PROGRAMM: define WERT WORD[6] '= BYTE 11/12 'Binäre Ausgabe aller Werte von 0 bis 255 mit den 4 LEDs: #Start for WERT = 0 to 255 gosub LED_LONIBBLE gosub LED_HINIBBLE next goto Start 'IIIIIIIIIIII Binärausgabe mit den 4 LEDs IIIIIIIIIIIII 'Die Variable WERT muss als BYTE oder WORD definiert sein. 'Ausgabe 1. Nibble (low): #LED_LONIBBLE gosub LEDSOFF: gosub LED1FLASH: gosub LED1FLASH gosub LED1FLASH: gosub LED1FLASH: gosub LED1FLASH if (WERT and &B1) <> 0 then gosub LED1ON if (WERT and &B10) <> 0 then gosub LED2ON if (WERT and &B100) <> 0 then gosub LED3ON if (WERT and &B1000) <> 0 then gosub LED4ON pause 100: return 'Ausgabe 2. Nibble (high): #LED_HINIBBLE gosub LEDSOFF: gosub LED2FLASH: gosub LED2FLASH gosub LED2FLASH: gosub LED2FLASH: gosub LED2FLASH if (WERT and &B10000) <> 0 then gosub LED1ON if (WERT and &B100000) <> 0 then gosub LED2ON if (WERT and &B1000000) <> 0 then gosub LED3ON if (WERT 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
Damit kann man Messwerte gut ablesen.
Frage an BASIC-Programmier-Cracks: Geht das noch einfacher oder übersichlicher?
Mfg Dirk







Zitieren

Lesezeichen