|
||
ultimo aggiornamento 11 febbraio 2008 |
5 Riferimento dei Comandi
Questo capitolo esamina nel dettaglio tutte le istruzioni del PBASIC.
Di seguito c’č un elenco delle istruzioni suddiviso per funzionalitą:
Test e salto
IF...THEN |
Esegue un test ed effettua un salto ad una riga del programma. |
Effettua un salto ad una riga del programma in base ad un indice. |
|
GOTO |
Effettua un salto incondizionato ad una riga del programma. |
GOSUB |
Effettua un richiamo di una procedura. |
RETURN |
Ritorna da una procedura. |
RUN |
Esegue un altro programma. |
POLLRUN |
Esegue un altro programma fino al ricevimento di un interrupt. |
Cicli di esecuzione
FOR..NEXT |
Esegue un ciclo delle istruzioni un certo numero di volte. |
Accesso alla EEPROM
EEPROM |
Memorizza dei dati nella EEPROM prima di scaricare il programma. |
DATA |
Memorizza dei dati nella EEPROM prima di scaricare il programma. |
READ |
Copia un byte dalla EEPROM ad una variabile. |
WRITE |
Scrive un byte nella EEPROM. |
Accesso alla RAM
GET |
Copia un byte dalla RAM in una variabile. |
PUT |
Scrive un byte nella RAM. |
Numerici
LOOKUP |
Legge un dato all’interno di un elenco. |
LOOKDOWN |
Cerca un dato all’interno di un elenco. |
RANDOM |
Genera un numero pseudo-casuale. |
I/O Digitale
INPUT |
Setta un pin in modalitą di input |
OUTPUT |
Setta un pin in modalitą di output. |
REVERSE |
Inverte la direzione di un pin . |
LOW |
Mette a 0 logico un pin settato in output. |
HIGH |
Mette a 1 logico un pin settato in oupu.t |
TOGGLE |
Setta un pin in output ed inverte lo stato logico . |
PULSIN |
Misura un inpulso in ingresso. |
PULSOUT |
Genera un impulso invertendo lo stato di un pin. |
Legge lo stato di un pulsante e salta ad una riga del programma. |
|
COUNT |
Conta i cicli (1-0 e 0-1) su di un pin in un lasso di tempo. |
XOUT |
Genera il codice di controllo della linea X-10. |
I/O Seriale asincrona
SERIN Legge un
dato da linea seriale asincrona.
SEROUT Scrive un dato su di una linea seriale asincrona.
I/O Seriale sincrona
SHIFTIN |
Legge un dato da una linea seriale sincrona. |
SHIFTOUT |
Scrive un dato su una linea seriale sincrona. |
I/O Analogico
PWM |
Genera una tensione di uscita variabile 0-5V utilizzando un circuito RC. Al termine setta il pin in input. |
RCTIME |
Misura il tempo di carica/scarica di un circuito RC. |
Attesa
PAUSE Esegue una pausa da 0 a 65535 millisecondi.
Suono
FREQOUT Genera una o due onde sinusuoidali di una data frequenza.
DTMFOUT Genera un tono telefonico DTMF.
Consumi
NAP Sospende l’esecuzione del programma per un piccolissimo periodo.
SLEEP Si ferma per un periodo da 1 a 65535 secondi.
END Si ferma fino a quando non si resetta l’alimentazioni.
Analisi dei problemi
DEBUG Invia informazioni al PC per il debugging.
BRANCH
BRANCH Offset,[Address0, Address1, ...Address N]
Funzione
Esegue un salto alla riga di programma specificato dall’Offset.
Offset č la variabile / costante / espressione (0-255) che specifica la posizione dell’indirizzo a cui saltare all’interno della lista (0-N).
Address sono le label che specificano dove saltare
BUTTON
BUTTON Pin,DownState,Delay,Rate,Workspace,TargetState,Address
Funzione
Applica un algoritmo anti-rimbalzo, esegue un auto ripetizione, e salta ad
una riga di comando se il pulsante si trova nella condizione di TargetState.
La circuiteria del pulsante puņ essere sia attivo-alto o attivo-basso.
Pin č una variabile / costante / espressione (0-15) che specifica il pin di I/O da utilizzare
DownState č la variabile / costante / espressione (0-1) che specifica il livello logico da considerare come evento di pulsante premuto.
Delay č la varibile / costante / espressione (0-255) che specifica quanto a lungo deve stare premuto il pulsante prima che inizi l’auto ripetizione. Il ritardo č calcolato in cicli di esecuzione del comando BUTTON. Delay ha due valori particolari: 0 e 255. Se Delay č 0 l’istruzione BUTTON non esegue l’algoritmo di anti-rimbalzo nč quello di auto ripetizione. Se Delay č 255 viene eseguito l’algoritmo di anti-rimbalzo ma non l’auto ripetizione.
Rate č la variabile / costante / espressione (0-255) che specifica la velocitą di auto ripetizione.
Workspace č una variabile di tipo byte che serve a BUTTON per memorizzare i cicli effettuati. Bisogna azzerarla prima di usare BUTTON per la prima volta e non bisogna modificarla.
TargetState č la variabile / costante / espressione (0-1) che specifica in quale stato del pulsante deve essere fatto il salto all’indirizzo specificato. (0 = non premuto, 1 = premuto)>
Address č la label che specifica dove effettuare il salto.
Elenco dei comandi
█
Processore BS2 |
---|
Elenco revisioni | |
11/02/2008 | Emissione preliminare |