Elektronische Projekte: Wie Loops in PBASIC Code zu verwenden,

Die DO-Schleife in PBASIC kann die Programmierung des BASIC Stamp machen in Ihrer Elektronik ein bisschen kompakter projizieren. Das MACHEN Schleife ist eine besondere PBASIC Anweisung, die im wesentlichen die gleiche Funktion wie ein Etikett durchführt und ein GEHE ZU Erklärung. Betrachten wir zum Beispiel die folgenden:

Main: HOCH 0PAUSE 500LOW 0PAUSE 500GOTO Haupt

Die gleiche Funktion kann ohne die erreicht werden, Main Etikett oder die GEHE ZU Erklärung der Linien platzieren, die die LED ein- und ausschalten zwischen MACHEN und SCHLEIFE Aussagen, wie folgt aus:

DOHIGH 0PAUSE 500LOW 0PAUSE 500LOOP

Die Linien zwischen den MACHEN und SCHLEIFE Anweisungen werden wieder auf unbestimmte Zeit ausgeführt immer und immer wieder werden.

'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 eine DO-Schleife. ' {$ PBASIC 2.5} {$ STAMP BS2} Kurz VAR BYTELed VAR BYTESpeed ​​= 50LED = 0DOHIGH LedPAUSE SpeedLOW LedPAUSE SpeedIF Led lt; 10 THENLed = Led + 2ELSELed = 0ENDIFLOOP

Sie können einen bedingten Test auf der hinzufügen SCHLEIFE Anweisung die Schleife abhängig zu machen. Beispielsweise:

Led = 0DOHIGH LedPAUSE 500LOW LedPAUSE 500Led = Led + 2LOOP bis LED> 10

Dieser Code wird die LEDs auf den Pins 0, 2, 4, 6, 8 und 10. Nach der am Pin LED-Blitz 10 geblitzt wird, wird die nächste zu letzten Zeile setzt die LED Variable 12. Dann wird die LOOP UNTIL Erklärung sieht, dass LED größer als 10, ist es nicht mehr so ​​Looping.

Statt des Wortes BIS, Sie können das Wort WÄHREND den Zustand, in ein zu markieren MACHEN Schleife. Es gibt einen wesentlichen Unterschied zwischen BIS und WÄHREND, und der Unterschied ist so wie die Wörter vor. Wenn Sie das Wort BIS, die Schleife wird ausgeführt, bis die Bedingung erfüllt prüft. Wenn Sie das Wort WÄHREND, die Schleife wird ausgeführt, bis die Bedingung falsch prüft.

Beachten Sie, dass Sie auch den Zustand Test auf die umfassen kann MACHEN Anweisung oder auf der SCHLEIFE Erklärung. Wenn Sie den Zustand Test auf dem Platz MACHEN Anweisung wird die Bedingung geprüft Vor jeder Ausführung der Schleife. Wenn Sie es auf dem Platz SCHLEIFE Anweisung wird die Bedingung geprüft nach die Vollendung jeder Schleife.

Es ist üblich, zu platzieren WÄHREND Tests auf dem MACHEN Erklärung und BIS Tests auf dem SCHLEIFE Erklärung.

Led 0DO = während LED lt; 11HIGH LedPAUSE 500LOW LedPAUSE 500Led = Led + 2LOOP

Hier wird der Wert von LED wird vor jeder Ausführung der Schleife getestet. Die Schleife wird so lange ausgeführt, wie LED ist kleiner als 11.

MACHEN Schleifen können sein verschachtelt, was bedeutet, dass man MACHEN Schleife kann eine andere enthalten MACHEN Schleife. Wann MACHEN Schleifen verschachtelt sind, muss die innere Schleife einen bedingten Test haben. Ansonsten wird es Schleife für immer, und die äußere Schleife wird nie eine Chance zu vervollständigen haben.

In diesem Programm wird die innerste MACHEN Schleife blinkt die sechs LEDs einmal. Es verwendet eine BIS Bedingung, die Schleife zu stoppen, nachdem die letzte LED geblinkt hat. Die äußerste MACHEN Schleife läuft endlos, so dass die Blinkfolge auf unbestimmte Zeit fortzusetzen.

'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 verschachtelte Schleifen DO. ' {$ PBASIC 2.5} {$ STAMP BS2} Kurz VAR BYTELed VAR BYTESpeed ​​= 50DOLed = 0DOHIGH LedPAUSE SpeedLOW LedPAUSE SpeedLed = Led + 2LOOP bis LED> 10LOOP

Menü