Controlli Digitali Semplici

Da Blah Hacklab, GNU/Linux e software libero.
Arduino-Uno-R3.jpg

Indice

Materiale

Questo progetto necessita dell'utilizzo dei seguenti componenti

 # una Scheda Arduino(es. UNO, MEGA o equivalenti) 
   Vedi esempio: http://arduino.cc/en/Main/ArduinoBoardUno
 # pulsanti, led, resistenze da 10kohm e da 220ohm, condensatori da 1uF


Livello complessità: Semplice

Richieste: Conoscenza del Linguaggio C++

L'obbiettivo e le possibilità

Lo scopo di questi progetti è il prendere confidenza con Arduino, partedo da un progetto semplice e banale come il simulare un relè da abitazione, singolo o doppio o l'integrazione di entrambi.

Funzionamento

Alla scheda Arduino devono essere applicati 3 led e 2 pulsanti. Per i led è molto semplice, è sufficente una resistenza da 220ohm tra le uscite di Arduino e l'anodo(terminale lungo) del Led, ovviamente il catodo (terminale cordo) del Led và collegato al Negativo (Ground). Invece i punsanti vanno collegati a tra il positivo (+5V) e l'ingresso di Arduino, e dallo stesso ingresso và collegato una resistenza verso il Negativo (Ground), sistema detto anche "PULL DOWN" perchè fin tanto che il pulsante è aperto mantiene l'ingresso di Arduino a 0V. Al momento della pressione del pulsante l'ingresso avrà i 5V necessari a portare l'ingresso a 1.

Gli ingressi e le uscite necessarie per tutti e tre i programmi:

 2 e 3 = Ingressi per i Pulsanti
 5,6 e 7 = Uscite per i Led

Descrizione del Sorgente del Firmware

Anche se i sorgenti sono completi di commenti chiari sul funzionamento di ogni riga del listato, volevo aggiungere qualche informazione sul modo che ho usato.

Ho usato la creazione di costanti così const int buttonPinS = 3; per dare modo di scegliere quali ingressi o uscite usare, senza dover mettere mano a tutto il programma per sostituirle.

Lo scopo di sostituire un ingresso o una uscita sta nel fatto che il programma così com'è può essere intergato a qualsiasi altro, semplicemente copiandolo, il programma manterrà il suo funzionamento senza interferire con l'altra parte del programma, un esempio lo sia ha nell'ultimo sorgente che integra 2 funzionamenti contemporaneamente.

Per il momento non saprei cosa altro aggiungere, i listati che ho fatto sono affiancati da commenti step a step, quindi mi limito a farvi leggere i sorgenti e nel spronarvi a migliorarli, risparmiando byte preziosi e a riassumere il codice in meno righe possibile.

Questo modo di lavorare si chiama Hacking

Sorgenti

L'ultima versione aggiornata

 PulsanteLed.ino
 PulsanteLed2.ino
 PulsanteLed_Led2.ino

Se volete seguire tutti i nostri progetti o partecipare al migliramento...

 WebSVN
 
 oppure con SVN 
 
 "svn co svn://blah.pizzahack.eu/arduino/Seppang arduino_web_controller"

Partecipanti

Strumenti personali