Utente:Daniel Gostoli/Arduino: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Creata pagina con "== Incremento e decremento di un numero in un display a 7 segmenti in base a tasto == Il '''progetto''' che segue è pensato per questo e quello. Qui descrivete ''che cosa''..."
Etichetta: Editor wikitesto 2017
 
Riga 1:
== Incremento e decremento di un numero in un display a 7 segmenti in base a tasto ==
Il '''progetto''' che segue è pensato per la realizzazione di un conta-click, comandato da due pulsanti (uno per incrementare e uno per decrementare il numero), in grado di mostrare su uno schermo LCD a sette segmenti tutti i numeri naturali compresi tra 0 e 9.
Il '''progetto''' che segue è pensato per questo e quello.
 
de.
Qui descrivete ''che cosa'' volete realizzare.
 
=== Descrizione del progetto ===
Il sistema è composto da:
In questa sezioni inserirete come il progetto viene affrontato e risolto. Per rendere il tutto più semplice inserirò un mio progetto, così da darvi una traccia
 
* Pulsanti, hanno il compito di incrementare e decrementare il valore del contatore.
 
* Display LCD a sette segmenti a catodo comune, mostra i numeri compresi tra 0 e 9 del contatore.
 
=== Schema elettrico ===
Line 16 ⟶ 20:
 
=== Codice ===
Infine il codice (o, i codici) utilizzato. Per inserirela ilrealizzazione codice,del inprogetto quest'ambienteè constato ''Modifica sorgente'' basta scrivereutilizzato il testoseguente concodice: un singolo spazio, così:<syntaxhighlight lang="arduino" line="1">
int pinA = 2;
int pinB = 3;
int pinC = 4;
int pinD = 5;
int pinE = 6;
int pinF = 7; //definiamo le variabili
int pinG = 8;
int pinButton = 9;
int pinButton2 = 10;
int counter = 0;
int valButtonOld = LOW;
int valButtonOld2 = LOW;
 
void setup() {
pinMode(pinA, OUTPUT);
// put your setup code here, to run once:
pinMode(pinB, OUTPUT);
pinMode(pinC, OUTPUT);
pinMode(pinD, OUTPUT);
pinMode(pinE, OUTPUT); //impostiamo i pin come OUTPUT o INPUT
pinMode(pinF, OUTPUT);
pinMode(pinG, OUTPUT);
pinMode(pinButton, INPUT);
pinMode(pinButton2, INPUT);
 
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,HIGH); //assegnamo lo stato dei pin
digitalWrite(pinE,HIGH);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,HIGH);
}
 
void loop() {
// put your main code here, to run repeatedly:
 
int valButton = digitalRead(pinButton);
}
if(valButton==HIGH&&valButtonOld==LOW) //il pulsante è stato premuto
</syntaxhighlight>E, naturalmente, commenti nel codice, e spiegazioni, sono graditi.
{
counter=counter+1; //incremento del contatore
}
valButtonOld=valButton; //aggiornamento del valore della variabile
int valButton2 = digitalRead(pinButton2);
if(valButton2==HIGH&&valButtonOld2==LOW) //il pulsante 2 è stato premuto
{
counter=counter-1; //decremento del contatore
}
valButtonOld2=valButton2; //aggiornamento del valore della variabile
if (counter==0)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,HIGH); //scrittura numero 0
digitalWrite(pinE,HIGH);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,LOW);
}
if (counter==1)
{
digitalWrite(pinA,LOW);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,LOW); //scrittura numero 1
digitalWrite(pinE,LOW);
digitalWrite(pinF,LOW);
digitalWrite(pinG,LOW);
}
if (counter==2)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,LOW);
digitalWrite(pinD,HIGH); //scrittura numero 2
digitalWrite(pinE,HIGH);
digitalWrite(pinF,LOW);
digitalWrite(pinG,HIGH);
}
if (counter==3)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,HIGH); //scrittura numero 3
digitalWrite(pinE,LOW);
digitalWrite(pinF,LOW);
digitalWrite(pinG,HIGH);
}
if (counter==4)
{
digitalWrite(pinA,LOW);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,LOW); //scrittura numero 4
digitalWrite(pinE,LOW);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,HIGH);
}
if (counter==5)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,LOW);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,HIGH); //scrittura numero 5
digitalWrite(pinE,LOW);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,HIGH);
}
if (counter==6)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,LOW);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,HIGH); //scrittura numero 6
digitalWrite(pinE,HIGH);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,HIGH);
}
if (counter==7)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,LOW); //scrittura numero 7
digitalWrite(pinE,LOW);
digitalWrite(pinF,LOW);
digitalWrite(pinG,LOW);
}
if (counter==8)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,HIGH); //scrittura numero 8
digitalWrite(pinE,HIGH);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,HIGH);
}
if (counter==9)
{
digitalWrite(pinA,HIGH);
digitalWrite(pinB,HIGH);
digitalWrite(pinC,HIGH);
digitalWrite(pinD,LOW); //scrittura numero 9
digitalWrite(pinE,LOW);
digitalWrite(pinF,HIGH);
digitalWrite(pinG,HIGH);
}
if (counter==10)
{ //reset del contatore
counter = 0;
}
if (counter==-1)
{ //reset del contatore
counter = 0;
}
}
</syntaxhighlight>
 
=== Conclusioni ===
riepilogando
Infine riepilogate cosa avete fatto. E, se avete utilizzato materiali di terze parti, non dimenticate di citare gli autori. Tutte le note finiranno a piè pagina.
 
<!-- Progetto generico -->