In questi primi esempi abbiamo visto come programmare il microcontrollore Arduino per compiere vari azioni. Tuttavia tutte le operazioni programmate erano di tipo passivo, nel senso che una volta accesso il dispositivo effettuava l’operazione precedentemente definitiva. Tramite l’uso del pulsante è possibile creare una prima interazione indipendente.
Il pulsante può essere usato per agire solamente alla pressione (il tipico esempio è rappresentato dal campanello o il clacson che emette un suono solo nel momento in cui è premuto) o di interruttore vero e proprio (ad esempio per accendere/spegnere le luci).
Accendere led alla pressione
int led=2;
int puls=8;
int val=0;
void setup() {
pinMode(led, OUTPUT);
pinMode(puls, INPUT);
}
void loop() {
val=digitalRead(puls);
if (val==1) {
digitalWrite(led, HIGH);
}
else {
digitalWrite(led, LOW);
}
}
Interruttore per led
int led=2;
int puls=8;
int val=0;
int stato=0;
void setup() {
pinMode(led, OUTPUT);
pinMode(puls, INPUT);
}
void loop() {
val=digitalRead(puls);
if(val==1) {
stato=1-stato;
delay(300);
}
if (stato==1) {
digitalWrite(led, HIGH);
}
else {
digitalWrite(led, LOW);
}
}
Interruttore per led (a 3 modalità)
Con questo programma aggiungiamo una modalità in più al nostro pulsante. Infatti non si limiterà ad accendere e spegnere il led ma prevede una fase intermedia, alla seconda pressione, il led lampeggerà.
int led=6;
int puls=7;
int val=0;
int contatore=0;
void setup() {
pinMode(puls, INPUT);
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop() {
val=digitalRead(puls);
if (val==1) {
contatore=contatore+1;
}
if (contatore==1) {
digitalWrite(led, LOW);
delay(100);
}
if (contatore==2) {
digitalWrite(led, HIGH);
delay(100);
}
if (contatore==3) {
digitalWrite(led, HIGH);
delay(100);
digitalWrite(led, LOW);
delay(100);
}
if (contatore==4) {
contatore=0;
}
Serial.println(contatore);
}
Campanello o clacson con buzzer
Il buzzer è un componente elettronico capace di generare toni. E’ utilizzato spesso in elettronica per attirare l’attenzione dell’utente. In informatica viene adoperato all’interno dei pc fissi come sistema per identificare eventuali errori. Per capire meglio è il classico cicalino che emette un suono – se tutto va bene – all’accensione del pc desktop.
Il funzionamento del buzzer è semplice. E’ fornito di due poli, il positivo da collegare ad un pin digitale di Arduino e l’altro a massa.
In questo esempio, riutilizziamo il codice precedente per adattarlo al buzzer. Le poche variazione riguardano: il nome della costante (buz abbreviazione di buzzer anziché led) e soprattutto l’indicazione della frequenza e del tempo del buzzer, avendo tramite l’istruzione, tone(buz,1000,100);
int buz=7;
int puls=8;
int val=0;
void setup() {
pinMode(buz, OUTPUT);
pinMode(puls, INPUT);
}
void loop() {
val=digitalRead(puls);
if (val==1) {
digitalWrite(buz, HIGH);
tone(buz,1000,100);
}
}
else {
digitalWrite(buz, LOW);
}
Led e Buzzer si attivano insieme alla pressione
int led=6;
int puls=7;
int buz=8;
int val=0;
void setup() {
pinMode(led, OUTPUT);
pinMode(puls, INPUT);
pinMode(buz, OUTPUT);
}
void loop() {
val=digitalRead(puls);
if (val==1) {
digitalWrite(led, HIGH);
digitalWrite(buz, HIGH);
tone(buz,1000,100);
}
else {
digitalWrite(led, LOW);
digitalWrite(buz, LOW);
}
}
Pulsante per display lcd 16×2
#include <LiquidCrystal.h>
// inizializza la libreria con i numeri dei pin utilizzati
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
int puls1=8;
int val1=0;
void setup() {
// imposta il numero di colonne e righe del display utilizzato:
lcd.begin(16, 2);
// Stampa il messaggio sull’LCD.
lcd.print(“Computereweb.eu”);
}
void loop() {
val1=digitalRead(puls1);
if (val1==1) {
lcd.setCursor(0, 1);
lcd.print(” CIAO! “);
}
}
Non esiste un manuale in rete. Per installare l'app può far riferimento a ciò che abbiamo descritto e testato correttamente.
Chiedo dove posso trovare il manuale AKAI per orologio K_FIT 300, per installare il software tra telefono e orologio Ringrazio…
non riesco a fare niente mi dice che è ofline. mi date qualche dritta, grazie
non mi fa fare niente, mi dice che è ofline
mi dice che la password è errata. sono sicuro che è quella giusta ma sono mesi che non lo uso.…