Electronica, Arduino, programare

Daca vom construi un montaj cu Arduino alimentat de la baterii sau acumulatori si vrem sa marim autonomia acestuia atunci una dintre optiunile de a economisi energie electrica este prin punerea microcontrolerului in modul sleep.

Pentru a putea face acest lucru vom folosi pinul digital 2 la care vom atasa o intrerupere. Cu ajutorul acestei intreruperi putem scoate procesorul din starea sleep in orice moment dorim pentru ca acesta sa isi reia activitatea.

Pentru a genera o intrerupere putem folosi un comutator, un senzor sau chiar un ceas RTC.

In aceasta a 3-a parte a tutorialului vom vedea ce alte feluri de cod sursa putem scrie in functia setup().

Vom incepe cu senzorul de temperatura DHT22/DHT11. Acest senzor necesita o librarie dedicata acestuia.  Iar codul sursa este cel de mai jos:

#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);

void setup() {
   dht.begin();
}

Un alt senzor foarte uzual este DS18B20. Acesta necesita 2 librarii, mai multe informatii despre acestea se regasesc in acest articol. Codul sursa folosit este urmatorul:

In acest articol voi incerca sa exemplific cat mai multe exemple de cod sursa care pot fi rulate in functia loop().

In primul rand putem citi valoarea aflata la un anumit pin. Acest lucru se face la un pin digital prin comanda 

valoareCitita = digitalRead(numarPin);

 unde in variabila valoareCitita vom stoca valoarea existenta la acel pin iar pentru un pin analogic vom folosi urmatoarea instructiune

valoareCitita = analogRead(numarPin);

De asemenea putem si seta unui alt pin o anumita valoare de iesire. Aceasta valoare poate fi digitala (LOW sau HIGH) cu ajutorul comenzii

In aceasta parte vom vedea ce face functia void setup() si ce fel de cod putem scrie in aceasta.

Aceasta functie va fi rulata de catre microcontroler o singura data. De aceea aici putem adauga cod sursa cu care vom initializa alte functii utile (comunicare in terminalul serial, afisare LCD, initializarea diferitilor senzori etc).

Tot in aceasta functie putem stabili care pin va fi folosit pentru intrare si care pentru iesire.

In aceasta parte vom analiza codul sursa folosit pentru comunicatia seriala si pentru displayurile LCD cele mai uzuale.

Cea mai usoara si rapida forma de afisare a unor valori folosite de catre microcontroler este comunicatia seriala. Pentru a face acest lucru mai intai trebuie sa initializam acest tip de afisare. Acest lucru va fi facut folosind urmatorul cod sursa: 

Autentificare