Painikkeet ovat uskomattoman yleisiä DIY Arduino -tilassa, ja lukemattomat projektit verkossa luottavat näihin pieniin kytkimiin koodinsa aktivoimiseksi. Mutta kuinka tarkalleen voit kytkeä ja ohjelmoida useamman kuin yhden painikkeen toimimaan Arduinosi kanssa? Otetaan selvää.

Mitä teemme?

Tämä on yksinkertainen projekti, jonka tarkoituksena on saada sinut alkuun monimutkaisemmilla Arduino-rakennuksilla tulevaisuudessa. Emme anna painikkeillemme työtä, mutta tämä tarkoittaa, että voit valita, mitä haluat niiden tekevän itsellesi käyttämällä jotakin muuta kätevää DIY Arduino -oppaamme.

Mitä tarvitset?

Tarvitset vain kourallisen osia tämän projektin loppuun saattamiseen, joista monet sinulla on jo itse tee-se-itse-osakokoelmassasi.

  • 4 x painikekytkintä
  • 4 x 10kΩ vastukset
  • 1 x mikä tahansa Arduino-levyn tyyppi (käytämme Leonardoa)
  • PVC/silikonipinnoitettu lanka

Useiden painikkeiden kytkeminen Arduinoon

Tämän projektin johdotus on yksinkertainen, mutta sinun on oltava varovainen, jotta johdot eivät sotkeudu kutakin kytkentää tehdessäsi, koska jokainen painike vaatii kaksi erilaista johtoa.

instagram viewer

Yksinkertaisesta alkaen on järkevää kytkeä yksi painike, jonka positiivinen jalka on kytketty 5 V: n nastaan Arduinossamme ja painikkeen maadoitusjalka yhdistetty sekä GND: hen että Digital Pin 2:een Arduinossamme hallitus. Napin maadoitusjalan ja Arduinon GND-nastan väliin on kytkettävä vastus.

Kun yksi painike on kytkettynä, on aika lisätä muut. Jokainen painike tarvitsee oman digitaalisen nastansa; Valitsimme 2, 3, 4 ja 5 käyttämillemme neljälle painikkeelle, mutta mikä tahansa digitaalisista pinneistä toimii. Nyt kun Arduinosi on kytketty, on aika alkaa työstää koodia.

Useiden painikkeiden ohjelmointi Arduinolla

Projektin koodi on mukava ja yksinkertainen, ilman luokkakirjastoja tai muuta monimutkaista ohjelmointia.

Painikkeiden määrittäminen pinsseihin

Ensimmäisessä vaiheessa meidän on määritettävä painikkeemme Arduino-levymme eri nastoihin. Koska käytimme digitaalisia nastaja 2, 3, 4 ja 5, nämä ovat nastat, jotka ilmoitamme koodillamme. Tämä tulee sijoittaa Arduino-projektisi yläosaan ennen mitään toimintoja.

int input4Pin = 5;
int input3Pin = 4;
int input2Pin = 3;
int input1Pin = 2;

Painikkeiden asettaminen

Kuten useimmissa Arduino-projekteissa, käytämme toimintoa, joka suoritetaan kerran ohjelman alussa, nimeltään void setup(). Ensin aloitamme sarjayhteytemme siirtonopeudella 57600, minkä jälkeen painikkeet alustetaan. Tämä on kaikki mitä tarvitsemme void setup() toiminto.

void setup()
{
Serial.begin (57600); // tämä aloittaa sarjayhteyden siirtonopeudella 57600
pinMode (tulo4Pin, INPUT);
pinMode (tulo3Pin, INPUT);
pinMode (tulo2Pin, INPUT);
pinMode (tulo1Pin, INPUT); // nämä rivit ilmoittavat jokaisen painikkeen syötteeksi
}

Näppäinpainallusten havaitseminen

Tämä seuraava vaihe on monimutkaisempi kuin muut, koska luomme oman funktiomme, joka käsittelee pääsilmukkafunktion muuttujaa. Aluksi meidän on ilmoitettava funktiomme kokonaislukumuuttujalla, kuten alla oleva koodi.

void checkPush (int pinNumber)

Tämän jälkeen meidän on määritettävä käyttämämme muuttuja ja luotava jos lauseke, joka havaitsee, kun kutakin painiketta painetaan. Tämä toiminto voi tarkistaa vain painikkeen kerrallaan käyttämällä muuttujaa, jonka se saa pääsilmukkafunktiosta, jotta se tietää, mikä painike tarkistaa. Meidän jos lauseke tarkistaa painikkeen tilan sisäänrakennetun toiminnon avulla digitaalinen luku toiminto.

void checkPush (int pinNumber) 
{
int-painikePushed = digitaalinenLue (pinNumber);
if (buttonPushed == KORKEA) {
// lisää koodi tähän, kun painiketta painetaan
}
else {
// lisää tähän koodi, kun painiketta ei paineta
}
}

Koodi lisätty jos lauseke suoritetaan, kun painiketta painetaan, kun taas koodi on muu lauseke suoritetaan vain, kun painiketta ei paineta.

Pääsilmukan rakentaminen

Lopuksi, viimeisenä koodinpalana, joka sinun on lisättävä ohjelmaan, on aika rakentaa void loop() toiminto. Tarvitsemme vain neljä koodiriviä: yksi jokaiselle Arduinoon liitetylle painikkeelle. Nämä rivit kutsuvat funktiota, jonka loimme edellisessä vaiheessa kunkin painikkeen PIN-numerolla.

void loop()
{
checkPush (5);
checkPush (4);
checkPush (3);
checkPush (2);
}

Valmis koodi

Kun sinulla on kaikki tämä koodi paikallaan, valmiin ohjelmasi pitäisi näyttää alla olevalta koodilta. Olemme lisänneet kommentteja jokaiselle riville helpottaaksemme niiden ymmärtämistä, mutta kehotamme sinua etsimään ja lukemaan asioita, joita et tunnista. Tämä voi olla loistava tapa laajentaa koodaustietoasi.

int input4Pin = 5;
int input3Pin = 4;
int input2Pin = 3;
int input1Pin = 2;
// tämä ilmoittaa jokaisen painikkeemme ja niiden nastat
// varmista, että käytät nastat, joihin painikkeesi on kytketty
void setup()
{
Serial.begin (57600); // tämä aloittaa sarjayhteyden siirtonopeudella 57600
pinMode (tulo4Pin, INPUT);
pinMode (tulo3Pin, INPUT);
pinMode (tulo2Pin, INPUT);
pinMode (tulo1Pin, INPUT); // nämä rivit ilmoittavat jokaisen painikkeen syötteeksi
}
void loop()
{
checkPush (5);
checkPush (4);
checkPush (3);
checkPush (2); // jokainen näistä riveistä kutsuu checkPush-funktiota eri pin-numeroilla
}
void checkPush (int pinNumber) // tämä funktio odottaa kokonaislukuarvon, kun sitä kutsutaan
{
int-painikePushed = digitaalinenLue (pinNumber); // tämä lukee painikkeen tilan sen PIN-numeron perusteella
if (buttonPushed == HIGH) { // tämä tarkistaa painikkeen tilan
// lisää koodi tähän, kun painiketta painetaan
}
else {
// lisää tähän koodi, kun painiketta ei paineta
}
}

Menestys: johdotus ja useiden painikkeiden ohjelmointi Arduinolla

Tämä on helppo projekti aloittaa, kun haluat oppia Arduinosin laitteistoista ja ohjelmistoista. Voit helposti laajentaa tekemisiäsi lisäkomponenteilla, jolloin saat mahdollisuuden tutkia monia jännittäviä ideoita ja luoda asioita, joista olet ylpeä.

Arduino-ohjelmointi aloittelijoille: Liikennevaloohjainprojektin opetusohjelma

Lue Seuraava

JaaTweetJaaSähköposti

Liittyvät aiheet

  • tee-se-itse
  • Ohjelmointi
  • Arduino
  • Elektroniikka
  • Ohjelmointi
  • Tee-se-itse-projektin opetusohjelmat

Kirjailijasta

Samuel L. Garbett (36 artikkelia julkaistu)

Samuel on Iso-Britanniassa toimiva teknologiakirjoittaja, joka on intohimoinen kaikkeen tee-se-itse-asioihin. Perustettuaan yrityksiä verkkokehityksen ja 3D-tulostuksen aloilla sekä työskennellyt useiden vuosien ajan kirjailijana, Samuel tarjoaa ainutlaatuisen näkemyksen teknologian maailmaan. Hän keskittyy pääasiassa tee-se-itse-tekniikkaprojekteihin, ja hän ei rakasta muuta kuin hauskojen ja jännittävien ideoiden jakamista, joita voit kokeilla kotona. Työn ulkopuolella Samuel voidaan yleensä tavata pyöräilemässä, pelaamassa PC-videopelejä tai yrittämässä epätoivoisesti kommunikoida lemmikkirapunsa kanssa.

Lisää kirjailijalta Samuel L. Garbett

tilaa uutiskirjeemme

Liity uutiskirjeemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia ​​e-kirjoja ja eksklusiivisia tarjouksia!

Klikkaa tästä tilataksesi