Electronica, Arduino, programare

Pentru a pune o pauza in rularea codului executat de catre Arduino pana acum foloseam functia delay(). Dar aceasta functie nu este recomandata a fi folosita decat in cazurile in care testam codul. In locul acestei functii vom folosi functia millis() sau chiar micros().

De ce nu trebuie sa folosim functia delay()? Deoarece aceasta functie "spune" procesorului sa faca o pauza de x milisecunde (cate declaram ca parametru) iar acest lucru nu este de dorit. Nu am vrea ca procesorul sa faca o pauza ci ca el sa ruleze continuu.

Pentru acest lucru vom folosi functia millis(). Codul sursa este usor de folosit si voi exemplifica mai jos cum se face.

In acest articol vom folosi un modul cu 2 relee pentru a vedea cum se poate conecta impreuna cu Arduino.

Daca avem nevoie doar de 1 releu gasim module dedicate cu un singur releu iar daca avem nevoie de mai multe relee se gasesc module cu 4, 8 sau 16 relee.

Modul se alimenteaza cu +5V iar fiecare releu este comandat cu un semnal logic LOW.

Poza cu modulul este mai jos:

Intr-un articol mai vechi am folosi un servomotor impreuna cu Arduino. Acum vom incerca sa folosim 2 servomotoare.

Conectarea celor 2 motoare este simpla, alimentarea se face cu +5V iar comanda fiecarui motor o vom da de pe iesirile digitale 2 si 3 ale Arduino.

Servomotoarele folosite sunt SG90. Cele 3 terminale ale fiecarui servomotor se vor conecta in acest mod:

Servo        ---     Arduino

Rosu          -      +5V

Maro          -      GND

Galben       -      D2 sau D3

Sketchul folosit este urmatorul:

In acest articol voi folosi un modul capacitiv cu 16 butoane. Acesta are la baza circuitul integrat TTP229.

Alimentarea acestui modul se va face la +5V.

Pentru a detecta care buton (touchpad mai exact) este atins vom folosi cele 8 iesiri digitale ale modulului.

Aceste iesiri ofera un semnal logic HIGH in momentul in care se detecteaza atingerea unui buton.

Din pacate modulul nu poate detecta atingerea a 2 sau mai multe butoane simultan.

Modulul are si pini pentru conectarea pe I2C dar eu nu am reusit sa folosesc aceasta facilitate in ciuda a tuturor informatiilor citite pe internet cat si a datashet-ului.

Poza cu modulul folosit este mai jos:

Autentificare