Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Painike on komponentti, joka yhdistää kaksi pistettä piiriin, kun sitä painetaan.
Kun painike on auki (ei painettu), painikkeen kahden jalan välillä ei ole yhteyttä, joten tappi on kytketty 5 volttiin (ylösvetovastus) ja luemme HIGH. Kun painike suljetaan (painetaan), se muodostaa yhteyden kahden jalansa välillä ja yhdistää nastan maahan niin, että luemme LOW. (Tappi on edelleen kytketty 5 volttiin, mutta niiden välinen vastus tarkoittaa, että tappi on "lähempänä" maata.)
Vaihe 1: Tarvittavat komponentit:
1. Arduino UNO
2. Leipälauta
3. Painike
4. Vastus
5. Hyppyjohdin
Vaihe 2: Piirikaavio:
Liitä kolme johtoa korttiin. Ensimmäinen kulkee painikkeen yhdestä jalasta alasvetovastus (tässä 10k ohmia) kautta maahan. Toinen siirtyy painikkeen vastaavasta jalasta 5 voltin syöttöön. Kolmas liitetään digitaaliseen I/O -nastaan (tässä nasta 2), joka lukee painikkeen tilan.
Kun painike on auki (painamatta), painikkeen kahden jalan välillä ei ole yhteyttä, joten tappi on kytketty maahan (alasvetovastus) ja luemme LOW. Kun painike suljetaan (painetaan), se muodostaa yhteyden kahden jalansa välille ja yhdistää nastan jännitteeseen niin, että luemme HIGH. (Tappi on edelleen kytketty maahan, mutta vastus vastustaa virran virtausta, joten vähimmän vastuksen polku on +5 V.) Jos irrotat digitaalisen I/O -nastan kaikesta, LED voi vilkkua epäsäännöllisesti. Tämä johtuu siitä, että tulo on "kelluva" - eli sitä ei ole kytketty jännitteeseen tai maahan. Se palauttaa enemmän tai vähemmän satunnaisesti joko HIGH tai LOW. Siksi tarvitset alasvetovastuspiiriin.
Vaihe 3: Koodi:
Lisää mielenkiintoisia projekteja ota yhteyttä minuun osoitteessa:
Youtube: https://www.youtube.com/channel/UCTS10_CRYJhT-vb9… Facebook-sivu:
Instagram: https://instagram.com/official_techeor? Igshid = uc8…
int -painike = 2;
int a; void setup () {Serial.begin (9600); pinMode (painike, INPUT); } void loop () {a = digitalRead (painike); Serial.print ("Painikkeen arvo ="); Sarja.println (a); }