mercoledì 24 febbraio 2021

Arduino N° 83 - Prova Monitor seriale






 

< Arduino N° 82

 Achille De Santis

Arduino N°  84







Avere una risposta del sistema, come stringa su "monitor seriale", può fare comodo in molti casi pratici.

In questo caso, è possibile controllare visivamente il valore PWM di uscita su un opportuno LED e verificare a monitor il valore attribuito alla variabile.

L'uscita, ovviamente, deve essere del tipo PWM altrimenti non si riesce ad ottenere un valore pseudo-analogico.

Il valore corrispondente viene letto in uscita, secondo la gradinata 0-255; opportunamente "mappato", viene visualizzato anche in percentuale.

Nell'esempio mostrato, ruotando il potenziometro si agisce sull'ingresso analogico in modo continuo.

Il valore corrispondente, in uscita, può essere letto aprendo il  monitor seriale.


Ad evitare inutili scorrimenti delle righe del monitor seriale, che ne renderebbe difficoltosa la lettura, i valori PWM vengono aggiornati soltanto quando si rilevi una variazione rispetto al valore precedente. Si risparmia anche sui tempi di scrittura a monitor e la lettura risulta molto agevole.
                         



Lo sketch e la simulazione del circuito sono disponibili per l'analisi e il download.


  • Il potenziometro, collegato sul piedino A0, fornisce la tensione analogica di ingresso
  • il LED verde segnala l'accensione del circuito;
  • il LED rosso segnala visivamente il valore analogico raggiunto. 


Simulazione:

Prova monitor seriale


Argomenti correlati:  






tecnatronATgmail.com

> Arduino N°  84

martedì 23 febbraio 2021

Facezie - per rinfrancar la mente e lo spirito

 


 

  •  l'alimentatore non c'è la fà ! 
  • I Volti (nel senso di “tensione in volt”)
  • Gli Ampère (nel senso di “corrente” elettrica)
  • Gli Ohm, (nel senso di “resistenza” elettrica)
  • non l'ho avevo capito ... del tipo “quest’hanno andremo sulla ringhiera ligure; potremo mangiare il pane Azimuth e vedere gli animali allo stato ebraico”.
  • Parlando di antenne… Conoscevo l'assorbi-odori ma non avevo mai sentito parlare dell'assorbi-rumori. Hai qualche link di approfondimento?
  • Io ho il ricevitore “jaesu” vr 5000 incomincio a vedere qualche “seghimento” sparire che mi consigliate
  • Leggerò bene i curriculum - “Leggerò bene i curricoli” o “Leggerò bene i curricula” (dal latino)
  • un dipolo rotativo ho altro tipo
  • l addove
  • calabbria con 2 BB
  • Contraddiscimi pure
  • noi interlucuiamo
  • diverse autorizzazione   (assonanza grammaticale?)
  • altre autorizzazione       (idem)
  • questo che stò per dirvi
  • oppure nò
  • l'ho fa credo sia normale
  • e non l'ho fa bohhh?
  • Imperativo: “mettici 2 relé e attacca tutto”. Risposta: ”Va bene anche il mastice?”
  • “comanderai tutto a video a colpi di mouse”. “Sicuro che il mouse non si frantumi?”
  • Cosa centra        Non ci centra nulla!
  • non sappiate niente
  • a una cosa a fatto… ah! Una cosa ha fatto…
  • Se stai al bungher
  • il cavo va steso in verticale altrimenti... diventa lo stendino di casa!!!!!
  • Quando non c'è propagazione il segnale resta attaccato all'antenna!
  • Quando accendi la radio dopo un periodo di propagazione assente aspetta dieci minuti prima di trasmettere, per dar modo al segnale precedente di staccarsi dall'antenna!!!
  • Se hai acceso da poco il tuo CB e il corrispondente ti dice che il tuo segnale ha un forte ronzìo significa che ieri non c'era propagazione e oggi non hai aspettato dieci minuti prima di trasmettere!!!
  •  

·         

mercoledì 17 febbraio 2021

Arduino N° 82 - Charlieplexing 12 LED




< Arduino N° 81

 Achille De Santis

> Arduino N°  83



Charlieplexing! 

Ovvero, multiplazione di 12 LED utilizzando soltanto 4 uscite. 
  















/* ---------- Inizio programma ------------------------------------------
 *  Charlieplexing 12 LEDs
 *  Comando di 12 LED con 4 linee di uscita.
 *  Achille De Santis V2.1 del 15-02-2018
--------------------------------------------------------------
Row 1 (R1): Arduino Pin 13
Row 2 (R2): Arduino Pin 12
Row 3 (R3): Arduino Pin 11
Row 4 (R4): Arduino Pin 10
-------------------------------------------------------------
variable    pinMode      state
 L           OUTPUT       LOW 
 H           OUTPUT       HIGH
 Z           INPUT        LOW
 Z           INPUT        LOW
-----------------------------------------------------------
      R1(Pin 13)     R2(Pin 12)     R3(Pin 11)  R4(Pin 10)
L1      L                H               Z            Z
L2      H                L               Z            Z
L3      Z                L               H            Z
L4      Z                H               L            Z
L5      L                Z               H            Z
L6      H                Z               L            Z
L7      L                Z               Z            H
L8      H                Z               Z            L
L9      Z                L               Z            H
L10     Z                H               Z            L
L11     Z                Z               L            H
L12     Z                Z               H            L
----------------------------------------------------------
LED    Cathode     Anode       LED      Cathode      Anode
1       R2          R1          2         R1          R2
3       R3          R2          4         R2          R3         
5       R3          R1          6         R1          R3 
7       R1          R4          8         R4          R1 
9       R2          R4          10        R4          R2 
11      R3          R4          12        R4          R3 
------------------------------------------------------------
*/

#define R1  13     // Riga 1
#define R2  12     // Riga 2    
#define R3  11     // Riga 3
#define R4  10     // Riga 4


void intestazione()
{ Serial.println(" ---------------------------------------------- ");
  Serial.println(" - Tecnatron - ing. Achille De Santis         - ");
  Serial.println(" - tecnatron@gmail.com                        - "); 
  Serial.println(" - Charlieplexing 12 LEDs                     - "); 
  Serial.println(" - D13  R1  13      Riga 1                    - "); 
  Serial.println(" - D12  R2  12      Riga 2                    - "); 
  Serial.println(" - D11  R3  11      Riga 3                    - "); 
  Serial.println(" - D10  R4  10      Riga 4                    - "); 
  Serial.println(" ---------------------------------------------- ");
}

void setup() 
  {              
          // il set-up è variabile! 
          // il setup fisso può essere questo
    Serial.begin(9600);      // stabilisco la velocità di comunicazione
    intestazione();          // intestazione, inviata alla seriale
  }

void charlie(int L1, int L2, int L3, int L4)         // Routine per la gestione dei Led
{             // Basso,  Alto,  Z,  Z)
  // accende il LED generico
  pinMode(L1, OUTPUT);   digitalWrite(L1, LOW);  // Riga 1
  pinMode(L2, OUTPUT);   digitalWrite(L2, HIGH); // Riga 2
  
  pinMode(L3, INPUT);    digitalWrite(L3, LOW);  // Riga 3
  pinMode(L4, INPUT);    digitalWrite(L4, LOW);  // Riga 4
  
  delay(500);
}

void loop()
{
  charlie(R1, R2, R3, R4);    //turn on LED1
  charlie(R2, R1, R3, R4);    //turn on LED2
  
  charlie(R2, R3, R1, R4);    //turn on LED3
  charlie(R3, R2, R1, R4);    //turn on LED4
  
  charlie(R1, R3, R2, R4);    //turn on LED5
  charlie(R3, R1, R2, R4);    //turn on LED6
  
  charlie(R1, R4, R2, R3);    //turn on LED7
  charlie(R4, R1, R2, R3);    //turn on LED8
  
  charlie(R2, R4, R1, R3);    //turn on LED9
  charlie(R4, R2, R1, R3);    //turn on LED10
  
  charlie(R3, R4, R1, R2);    //turn on LED11
  charlie(R4, R3, R1, R2);    //turn on LED12  
}
// ---------- Fine programma ----------------------------------------------




Lo sketch e la simulazione del circuito sono disponibili per l'analisi e il download.


Simulazione:

Charlieplexing con 6 LED


Argomenti correlati:  



tecnatronATgmail.com

> Arduino N°  83

mercoledì 10 febbraio 2021

Arduino N° 81 - Stazione meteo con TMP36

< Arduino N° 80

 Achille De Santis

Arduino N°  82





Stazione meteo per misure di temperatura e di umidità, con il circuito integrato TMP36 ed un sensore di umidità relativa.

Regolare la simulazione di temperatura con il cursore  e l'umidità con il potenziometro rotativo.


Lo sketch e la simulazione del circuito sono disponibili perl'analisi e il download.


tecnatronATgmail.com


Lo sketch e la simulazione del circuito sono disponibili per l'analisi e il download.


Simulazione:


Stazione meteo con TMP36


Argomenti correlati:  







> Arduino N°  82


mercoledì 3 febbraio 2021

Arduino N° 80 - Commutazione di tre LED con i rispettivi pulsanti.


< Arduino N° 79

 Achille De Santis

Arduino n° 81





Commutazione di tre LED con i rispettivi pulsanti. 

I comandi sono di tipo "Toggle"; un impulso accende la corrispondente lampada,  un altro la spegne quindi è possibile accendere e spegnere le tre uscite mantenendone lo stato.

Inoltre, dalla logica utilizzata risulta che tenendo premuto un pulsante si ottiene il lampeggio del relativo LED con periodo di circa un secondo,


Lo sketch e la simulazione del circuito sono disponibili per l'analisi e il download.


Simulazione:

Commutazione di tre LED con i rispettivi pulsanti.


Argomenti correlati:  

Commutazione momentanea di un LED con tre pulsanti di comando





tecnatronATgmail.com


> Arduino N°  81