Elektronische Projekte: Verwendung von ENDIF und ELSE in PBASIC-Code

Programmierung in PBASIC ist ein notwendiges Übel, wenn Sie programmierbaren Mikroprozessoren wie die BASIC Stamp in Ihrer Elektronik-Projekten verwenden. PBASIC können Sie von Logik in Ihrem Programm durch den Einsatz durchführen OB Aussagen.

In seiner einfachsten Form, die OB Anweisung bewirkt, dass das Programm zu einem Label zu springen, wenn eine Bedingung erfüllt ist. Beispielsweise:

Ich bin geflohen lt; 11 THEN Haupt

Hier springt das Programm zu dem Main kennzeichnen, wenn der Wert des LED Variable kleiner als 11.

Eine zweite und nützlicheren Form des OB Anweisung können Sie Liste ein oder mehrere Anweisungen, die ausgeführt werden soll, wenn die Bedingung erfüllt ist. Beispielsweise:

Ich bin geflohen lt; 10 THENLed = Led + 2ENDIF

In diesem Beispiel wird 2 bis die zugegebene LED Variable, wenn der Wert des LED Variable kleiner als 10 ist.

Sie können so viele Aussagen setzen, wie Sie zwischen den wollen OB und ENDIF Aussagen. Beispielsweise:

Ich bin geflohen lt; 10 THENSpeed ​​= Speed ​​+ 10LED = Led + 2ENDIF

Hier wird die Geschwindigkeit Variable erhöht auch wenn die Bedingung Ausdruck wahr ist.

Der Hauptunterschied zwischen der IF-Anweisung mit ENDIF und eine IF-Anweisung ohne ENDIF ist, dass ohne die ENDIF, die Aussage, dass, wenn die IF-Bedingung wahr ist, der ausgeführt wird auf der gleichen Linie wie die IF sein muss und dann Schlüsselwörter.

Wenn das Schlüsselwort THEN das letzte Wort auf einer Linie ist, wird davon ausgegangen, dass Sie eine PBASIC ENDIF verwenden wird das Ende der Liste der Anweisungen zu markieren ausgeführt werden, wenn die IF-Bedingung erfüllt ist. Wenn Sie die ENDIF Anweisung umfassen vergessen, wird das Programm nicht richtig funktionieren.

Ein letzter Trick, dass die OB Anweisung können Sie tun, ist die Liste Anweisungen, die Sie, wenn der Bedingung ausgeführt werden soll istnicht wahr. Sie tun, dass ein durch die Verwendung SONST Erklärung zusammen mit dem IF-Anweisung. Beispielsweise:

Ich bin geflohen lt; 10 THENLed = Led + 2ELSELed = 0ENDIF

Hier, LED wenn der aktuelle Wert um 2 erhöht ist weniger als 10. Aber wenn der aktuelle Wert von LED nicht weniger als 10, die LED Variable wird auf 0 zurückgesetzt.

Hier ist eine Version des LED-Flasher-Programm, das eine IF-THEN-ELSE-Anweisung verwendet die LEDs in der Folge zu blinken.

'LED-Flasher-Programm' Doug Lowe '10. Juli 2011' 'Dieses Programm blinkt LEDs mit den Pins 0, 2, 4, 6, 8 und 10' in Folge. "" Diese Version des Programms verwendet einen IF-THEN ELSE-Anweisung. " {$ PBASIC 2.5} {$ STAMP BS2} Kurz VAR BYTELed VAR BYTESpeed ​​= 50LED = 0Main: HOCH LedPAUSE SpeedLOW LedPAUSE SpeedIF Led lt; 10 THENLed = Led + 2ELSELed = 0ENDIFGOTO Haupt

Menü