Cuprins:

Contor folosind butonul - Tinker Cad: 3 pași
Contor folosind butonul - Tinker Cad: 3 pași

Video: Contor folosind butonul - Tinker Cad: 3 pași

Video: Contor folosind butonul - Tinker Cad: 3 pași
Video: Primii pași în TINKERCAD 2024, Iulie
Anonim
Image
Image
Componente necesare
Componente necesare

Odată ce ați apăsat un buton de lucru, doriți adesea să faceți o acțiune în funcție de câte ori este apăsat butonul. Pentru a face acest lucru, trebuie să știți când butonul schimbă starea de la oprit la pornit și să numărați de câte ori se întâmplă această schimbare de stare. Aceasta se numește detectarea modificării stării sau detectarea marginilor. În acest tutorial învățăm cum să verificăm modificarea stării, trimitem un mesaj Serial Monitor cu informațiile relevante și numărăm patru modificări de stare pentru a porni și opri un LED.

Pasul 1: Componente necesare:

Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare

1. Arduino UNO

2. Pană de pâine

3. Buton

4. Rezistor

5. Firele jumperului

Pasul 2: Diagrama circuitului:

Image
Image

Conectați trei fire la placă. Primul merge de la un picior al butonului printr-un rezistor de tragere (aici 10k ohm) la sol. Al doilea merge de la piciorul corespunzător al butonului la sursa de 5 volți. Al treilea se conectează la un pin digital I / O (aici pinul 2) care citește starea butonului.

Când butonul este deschis (neaprins) nu există nicio conexiune între cele două picioare ale butonului, astfel încât pinul este conectat la masă (prin rezistența de tragere) și citim un LOW. Când butonul este închis (apăsat), face o conexiune între cele două picioare ale acestuia, conectând pinul la tensiune, astfel încât să citim un HIGH. (Pinul este încă conectat la masă, dar rezistența rezistă fluxului de curent, deci calea cu cea mai mică rezistență este la + 5V.) Dacă deconectați pinul I / O digital de la toate, LED-ul poate clipi neregulat. Acest lucru se datorează faptului că intrarea este „plutitoare” - adică nu este conectată nici la tensiune, nici la masă. Acesta va reveni mai mult sau mai puțin aleatoriu fie HIGH, fie LOW. De aceea, aveți nevoie de un rezistor pull-down în circuit.

Pasul 3: Cod:

Pentru proiecte mai interesante, conectați-mă pe: Youtube:

Pagina Facebook:

Instagram:

buton int = 2;

int a, i = 0; void setup () {Serial.begin (9600); pinMode (buton, INPUT); } void loop () {a = digitalRead (buton); if (a == 1) {i = i + 1; Serial.print ("Counter ="); Serial.println (i); } else {i = 0; }}

Recomandat: