Claus condicionals. Sintaxi:
if [expressió] then [sentència]
o
if [expressió] then { [bloc_de_sentències] }
De manera similar per a la resta:
else [sentència]
o
else { [bloc_de_sentències] }
Executa el bloc de sentències repetidament fins que l'expressió s'avalua com a certa. L'avaluació de l'expressió es realitza després del bloc de sentències, de manera que el bloc de sentències sempre s'executarà almenys una vegada. Sintaxi:
repeat { [bloc_de_sentències] } until [expressió]
Similar a «repeat», això executarà repetidament el bloc de sentències. No obstant això, l'expressió s'avaluarà abans de l'execució, no després. Llavors, si l'expressió s'avalua com a falsa en el primer pas, el bloc de sentències no s'executarà. Sintaxi:
while [expressió] { [bloc_de_sentències] }
Això fa que l'execució del codi continuï en la següent sentència després de l'etiqueta especificada. Sintaxi de «goto»:
goto
[nom_etiqueta]
Sintaxi de l'etiqueta:
nom_etiqueta:
Sovint es considera una bona pràctica de programació evitar l'ús de «goto». L'ús de sentències de control i subrutines donarà com a resultat un programa molt més llegible.
Fa que s'aturi l'execució del codi durant el període de temps especificat. L'interval serà en mil·lisegons. Sintaxi:
delay
[interval]
Nota
En l'actualitat, el Microbe assumeix que el PIC està operant a una freqüència de 4 MHz, és a dir, cada instrucció triga 1 microsegon a executar-se. Si aquest no és el cas, l'interval s'haurà d'ajustar proporcionalment.
Això es fa servir per a definir l'assignació dels pins per a una pantalla de set segments (càtode habitual) connectada al PIC. Sintaxi:
sevenseg
[nom] [a] [b] [c] [d] [e] [f] [g]
on [a]...[g] són els pins del PIC als quals s'adjunten els segments respectius de la pantalla de set segments. Els pins es poden escriure com a PORTX.N o RXN.
Per a mostrar un número en els set segments, l'assignació dels pins es tracta com una variable de només escriptura.
Exemple 5.4. Definició i sortida a un set segments
sevenseg seg1 RB0 RB1 RB2 RB3 RB4 RB5 RB6 seg1 = x + 2
Això es fa servir per a definir l'assignació dels pins per a un teclat numèric connectat al PIC. Sintaxi:
keypad
[nom] [fila 1] ... [fila 4] [columna 1] ... [columna n]
on [fila 1] ... [fila 4] i [columna 1] ... [columna n] són els pins del PIC als quals s'adjunten les respectives files i columnes del teclat numèric (de moment, el nombre de files és no modificable). Per a obtenir més informació sobre les assignacions dels pins, vegeu la «sevenseg» (a dalt).
Les columnes del teclat numèric s'han de baixar a terra mitjançant resistències de 100 k. Els pins de la fila s'han de configurar com a sortides i els pins de la columna com a entrades. Una vegada s'ha definit el teclat numèric, es tractarà com una variable de només lectura.
Exemple 5.5. Definir i llegir des d'un teclat numèric
keypad keypad1 RB0 RB1 RB2 RB3 RB4 RB5 RB6 x = keypad1
De manera predeterminada, els valors retornats per un teclat numèric són:
El valor del nombre si és una tecla numèrica (1 a 3 a la fila superior, hexadecimal des de l'A fins a la D a la quarta columna i continuant per a cada columna addicional).
253 per a la tecla a la fila 4, columna 1.
254 per a la tecla a la fila 4, columna 3.
Aquests valors es poden redefinir utilitzant l'ordre «alies», on el nom de la tecla a la fila «x», columna «y» (files i columnes que comencen amb 1), és «Keypad_x_y». Per exemple, per a donar-li el valor zero a la tecla d'asterisc en un teclat numèric de 4x3, s'utilitzarà el següent àlies: