Hi Michael,

also der Anschluss des Elko direkt an die Ports kann
ziemliich ins Auge gehen ... die treiben nur 20mA,
darüber kann der µC schaden nehmen.
Einen Vorwiderstand zur Strombegrenzung sollts schonmal geben.

Die while-wend-Schleife wird nicht ganz nach Wunsch laufen
denke ich. das AND ist beim Bascom mit der binären Operation
UND-Verknüpfung verwendet.

der 500000er Zähler will mir nicht so recht gefallen ...
schon mal an den Timer gedacht?
Wenn ichs richtig verstanden hab ist der nur dazu da
den Programmablauf bis zur nächsten Messung zu unterbrechen.
Das lässt sich mit nem Timer und einer
Interrupt-routine schöner lösen.
Der Vorteil dabei, der µC kann der weil bis der Timer abgelaufen
ist was Anderes machen, hängt also nicht in der Schleife fest,
oder du kannst ihn in nen Sleepmode setzen, der dann mit
dem Timerinterrupt aufgehoben wird, das spart z.B. Bateriestrom.

EDIT: selbiges gilt auch für den Wait-Befehl
Die Festlegung von dem Array auf 288 ist auch etwas
unschön ... ich würde da das array auf 255 kürzen,
dann könntest du

Dim Ausgang As Byte ... das spart RAM

Byte (1 byte).
Bytes are stores as unsigned 8-bit binary numbers

vs.

Long (four bytes)
Longs are stored as signed 32-bit binary numbers

oder wenns größer sein muss als Word deklarieren:
Word (two bytes).
Words are stored as unsigned sixteen-bit binary numbers