Nota
Ciao, benvenuto nella SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirti a noi?
Supporto esperto: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Impara e Condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato a nuovi annunci di prodotti e anteprime esclusive.
Sconti speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni festive e omaggi: Partecipa a omaggi e promozioni durante le festività.
👉 Pronto per esplorare e creare con noi? Clicca su [Qui] e unisciti oggi stesso!
Punto Lampeggiante
In questo progetto, disegneremo un punto su Processing, che lampeggia in sincronia con il LED. Per favore, costruisci il circuito come mostrato nello schema ed esegui lo sketch.
Componenti Necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un kit completo, ecco il link:
Nome |
ELEMENTI IN QUESTO KIT |
LINK |
|---|---|---|
Kit Raphael |
337 |
Puoi anche acquistarli separatamente dai link qui sotto.
INTRODUZIONE AI COMPONENTI |
LINK DI ACQUISTO |
|---|---|
Cablatura
Sketch
import processing.io.*;
int ledPin = 17;
boolean state = true;
void setup() {
size(100, 100);
frameRate(2); //imposta la frequenza dei fotogrammi
GPIO.pinMode(ledPin, GPIO.OUTPUT); //imposta ledPin su modalità output
}
void draw() {
state = !state;
if (state==true) {
GPIO.digitalWrite(ledPin, GPIO.LOW); //led acceso
fill(255, 0, 0); //imposta il colore del led acceso
} else {
GPIO.digitalWrite(ledPin, GPIO.HIGH); //led spento
fill(155); //imposta il colore del led spento
}
ellipse(width/2, height/2, width*0.75, height*0.75);
}
Come funziona?
All’inizio dello sketch, è necessario includere la libreria GPIO di Processing con import processing.io.*;, indispensabile per gli esperimenti con i circuiti.
La frequenza dei fotogrammi è la frequenza con cui appaiono i fotogrammi sulla scheda, espressa in hertz (Hz). In altre parole, è anche la frequenza con cui viene chiamata la funzione draw(). In setup(), impostando la frequenza dei fotogrammi a 2, la funzione draw() verrà chiamata ogni 0,5s.
Ogni chiamata alla funzione draw() inverte il valore di state e lo valuta. Se il valore è true, il LED si accende e il pennello viene riempito di rosso; altrimenti, il LED si spegne e il pennello viene riempito di grigio.
Dopo aver completato la valutazione, viene utilizzata la funzione ellipse() per disegnare un cerchio. È importante notare che width e height sono variabili di sistema utilizzate per memorizzare la larghezza e l’altezza della finestra di visualizzazione.
Ci sono altri due punti da considerare. Quando si utilizzano i GPIO, è necessario usare la funzione GPIO.pinMode() per impostare lo stato INPUT/OUTPUT del pin, e successivamente utilizzare la funzione GPIO.digitalWrite() per assegnare un valore (HIGH/LOW) al pin.
Nota
Cerca di evitare di usare delay() in draw() perché potrebbe influenzare l’aggiornamento della finestra di visualizzazione.