Esempio con un LED |
Quelli qui sotto in giallo sono i pin GPIO:
Nel nostro caso basterà solo attivarli e disattivarli.
Prima vediamo i comandi Linux necessari, e poi vediamo come inserirli in Livecode.
In Lunx i comandi da dare da terminale sarebbero i seguenti:
per attivare il ventitreesimo pin bisogna prima creare il sistema di cartelle dentro la cartella /sys, con:
echo 23 > /sys/class/gpio/export
In questo modo Linux in automaticamente crea un sistema di cartelle in /sys/class/gpio/gpio23/ poi dobbiamo dire a Linux che vogliamo impostare l'uscita, cioè il pin deve essere di tipo out con questo comando:
echo out > /sys/class/gpio/gpio23/direction
Ora per impostare l'uscita come acceso bisogna impostare il valore 1, mentre per spegnerlo basta impostare il valore 0 nel file value, ecco il codice per imporre il valore:
echo 1 > /sys/class/gpio/gpio23/value
Per far fare questi comandi a Livecode basta usare la funzione shell():
put shell("echo 23 > /sys/class/gpio/export") into risultato
put shell("echo out > /sys/class/gpio/gpio23/direction") into risultato
put shell("echo 1 > /sys/class/gpio/gpio23/value") into risultato
la variabile risultato conterrà di volta in volta eventuali messaggi di Lunux in risposta ai nostri comandi.
Per spegnere il LED il codice è:
put shell("echo 0 > /sys/class/gpio/gpio23/value") into risultato
mentre se non ci serve più il PIN 23, possiamo liberarlo con questo comando:
put shell("echo 23 > /sys/class/gpio/unexport") into risultato
Ricordate che quando un pin è acceso fornisce 3.3V, quindi fatevi bene i calcoli per LED e resitenza da mettere in serie:
Esempio di schema di montaggio LED e resistenza. |
Nessun commento:
Posta un commento