Video: Software Testing Tutorials for Beginners 2025
Il loop DO in PBASIC può rendere la programmazione del BASIC Stamp nel progetto di elettronica un po 'più compatta. Il ciclo DO è una speciale istruzione PBASIC che svolge essenzialmente la stessa funzione di un'etichetta e di una istruzione GOTO. Ad esempio, considerare quanto segue:
Principale: ALTO 0 PAUSA 500 BASSO 0 PAUSA 500 GOTO Principale
La stessa funzione può essere eseguita senza l'etichetta Principale o l'istruzione GOTO posizionando le linee che accendono e spengono il LED tra istruzioni DO e LOOP, come questo:
DO HIGH 0 PAUSE 500 LOW 0 PAUSE 500 LOOP
Le linee tra le istruzioni DO e LOOP verranno eseguite all'infinito all'infinito.
'LED Flasher Program' Doug Lowe '10 luglio 2011 "Questo programma fa lampeggiare i LED collegati ai piedini 0, 2, 4, 6, 8 e 10 in sequenza." Questa versione del programma utilizza un ciclo DO. '{$ PBASIC 2. 5}' {$ STAMP BS2} Velocità VAR BYTE Led VAR BYTE Velocità = 50 Led = 0 DO ALTO Led PAUSA Velocità LOW Led PAUSE Velocità IF Led <10 tHEN Led = Led + 2 ELSE Led = 0 ENDIF LOOP
È possibile aggiungere un test condizionale all'istruzione LOOP per rendere il ciclo condizionale. Ad esempio:
Led = 0 DO HIGH LED PAUSE 500 LOW Led PAUSE 500 Led = Led + 2 LOOP UNTIL Led> 10
Questo codice lampeggerà i LED sui pin 0, 2, 4, 6, 8 e 10. Dopo che il LED sul pin 10 è stato lampeggiato, la penultima riga imposta la variabile Led su 12. Quindi, l'istruzione LOOP UNTIL rileva che Led è maggiore di 10, quindi arresta il ciclo.
Invece della parola UNTIL, è possibile utilizzare la parola WHILE per contrassegnare la condizione in un ciclo DO. C'è una differenza sostanziale tra UNTIL e WHILE, e la differenza è proprio come suggeriscono le parole. Quando si utilizza la parola UNTIL, il ciclo verrà eseguito finché la condizione non sarà vera. Quando si utilizza la parola WHILE, il ciclo verrà eseguito finché la condizione non testerà false.
Si noti che è possibile includere anche il condition test sull'istruzione DO o sull'istruzione LOOP. Se si posiziona il test condizione sull'istruzione DO, la condizione viene testata prima di ogni esecuzione del ciclo. Se lo si posiziona sull'istruzione LOOP, la condizione viene testata dopo il completamento di ciascun ciclo.
È normale collocare i test WHILE sui test DO e UNTIL sull'istruzione LOOP.
Led = 0 DO WHILE Led <11 hIGH Led PAUSE 500 LOW Led PAUSE 500 Led = Led + 2 LOOP
Qui, il valore del Led viene testato prima di ogni esecuzione del loop. Il loop viene eseguito finché Led è minore di 11.
I loop DO possono essere nidificati , il che significa che un loop DO può contenere un altro ciclo DO.Quando i loop DO sono annidati, il ciclo interno deve avere un test condizionale. Altrimenti, il ciclo si interromperà per sempre e il ciclo esterno non avrà mai la possibilità di completarlo.
In questo programma, il ciclo DO più interno lampeggia i sei LED una volta. Usa una condizione UNTIL per interrompere il ciclo dopo che l'ultimo LED è lampeggiato. Il ciclo DO più esterno continua all'infinito, facendo continuare la sequenza lampeggiante a tempo indeterminato.
'LED Flasher Program' Doug Lowe '10 luglio 2011 "Questo programma fa lampeggiare i LED collegati ai piedini 0, 2, 4, 6, 8 e 10 in sequenza." Questa versione del programma utilizza cicli DO annidati. '{$ PBASIC 2. 5}' {$ STAMP BS2} Velocità VAR BYTE Led VAR BYTE Velocità = 50 DO Led = 0 DO HIGH PAUSE Velocità LOW Led PAUSE Velocità Led = Led + 2 LOOP UNTIL Led> 10 LOOP
