PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Interner Compiler Fehler BASIC



Wombatz
06.08.2011, 16:04
Hallo zusammen,

Ich versuche mir gerade selber Programmieren beizubringen und
habe gerade versucht einen einfache Schleife mit IF/Else zu schreiben um ihn auf meinen Probot zu testen.

Hier bekomme ich allerdings eine Fehlermeldung:
Interner Compiler Fehler Argument zu klein für DROP, in Datei codegen.cpp Zeile:4135

Daraus werde ich nicht so wirklich schlau.
Es muss aber an der If-Else Verzweigung liegen.
Könnt ihr mir helfen:

Sub main() 'Main Programm

PRO_BOT128_INIT() 'PRO-BOT128 System setup

Do While True

BLL_ON() 'LED hinten links an
AbsDelay(1000) '1Sek warten und dann aus
BLL_OFF()
AbsDelay(3000) '3Sek Pause

If BLL_ON() Then 'Wenn BLL an ist, soll LED hinten
BLR_ON() 'rechts für 0,5 Sek angeschaltet werden
AbsDelay(500)
BLR_OFF()

Else 'in der 3Sek Pause soll dann die
FLL_ON() 'FLL für 0,5 Sek angeschaltet werden
AbsDelay(500)
FLL_OFF()

End If
End While
End Sub

Wombatz
06.08.2011, 17:30
OK, jetzt hab ich mir das schon selber erklärt:
Sub main() 'Main Programm

PRO_BOT128_INIT() 'PRO-BOT128 System setup

Do While True
BLL_ON() 'LED hinten links an
AbsDelay(3000) '3Sek warten und dann aus
BLL_OFF()
AbsDelay(1000) '1Sek Pause


If Port_ReadBit(BLL_ON)= 1 Then 'Wenn BLL an ist, soll LED hinten
BLR_ON() 'rechts für 3 Sek angeschaltet werden
AbsDelay(3000)
BLR_OFF()

Else 'in der 3Sek Pause soll dann die
FLL_ON() 'FLL für 3 Sek angeschaltet werden
AbsDelay(3000)
FLL_OFF()
AbsDelay(1000)
End If

End While

End Sub

Jetzt die neue Frage... Der Code wird ja von oben nach unten gelesen...
Nun geht BLL an und nach 3 Sek aus...
Wenn sie aus ist, liest er weiter und schaltet FLL an, da der Port 0 ist...
Aber wie schaffe ich, dass der Prozessor beim Einschaltvorgang der BLL gleichzeitig die IF-Variante (BLR an) ausfürht???