Sisällysluettelo:

Arduino LED -painike, joka ohjaa käsittelyanimaatioita: 36 vaihetta (kuvilla)
Arduino LED -painike, joka ohjaa käsittelyanimaatioita: 36 vaihetta (kuvilla)

Video: Arduino LED -painike, joka ohjaa käsittelyanimaatioita: 36 vaihetta (kuvilla)

Video: Arduino LED -painike, joka ohjaa käsittelyanimaatioita: 36 vaihetta (kuvilla)
Video: Introduction to HT16K33 4 Digit LED Seven Segment Display with Arduino 2024, Marraskuu
Anonim
Image
Image
Arduino LED -painike, joka ohjaa käsittelyanimaatioita
Arduino LED -painike, joka ohjaa käsittelyanimaatioita
Arduino LED -painike, joka ohjaa käsittelyanimaatioita
Arduino LED -painike, joka ohjaa käsittelyanimaatioita

Tämä näppäimistö on valmistettu piirilevystä ja muista Sparkfunin valmistamista komponenteista. Sitä ohjaa Arduino Mega. Jokainen painike on mukava ja sileä ja tyydyttävä painaa, ja sen sisällä on RGB -LED! Olen käyttänyt sitä ohjaamaan käsittelyssä koodattuja animaatioita. Näppäimistö lähettää viestin aina, kun painiketta painetaan, ja kertoo, mikä painike se oli. Käsittely vastaanottaa nämä viestit ja muuttaa luonnoksen muuttujia riippuen siitä, mitä on painettu.

Miksi

LEDit ovat siistejä. Nappeja on hauska painaa. Animoidut geometriset kuviot ovat mukavia. Halusin yhdistää kaikki kolme. Vein tämän projektin juhliin, heijasin grafiikan seinälle ja annoin ihmisten leikkiä painikkeilla. VJ voisi myös käyttää sitä suorituskykyisemmällä tavalla, aivan kuten midi -ohjain, mutta enemmän DIY.

Miten

Tässä projektissa on neljä pääosaa.

Liitteenä oleva Youtube -video antaa hyvän kuvan siitä, kuinka nappipainike sopii yhteen. Tämä opas kattaa sen sekä Arduinon ja prosessointikoodin - (lisävideoita niille on työn alla)

  1. Painikkeen asettaminen yhteen - alkaa vaiheesta 1

    Tämä sisältää komponenttien valmistelun ja juottamisen piirilevyyn

  2. Arduino -koodi - alkaa vaiheessa 10

    Tätä varten tarvitsemme ymmärrystä matriisiskannauksesta, jonka puhun läpi.

  3. Käsittelykoodi - alkaa vaiheessa 24

    Tässä on loputtomia mahdollisuuksia, puhun yhden tähän mennessä tekemäni esimerkin kautta.

  4. Arduinon lähettäminen lähettämään viestejä käsittelyyn - Vaihe 16 lähettämistä varten, Vaihe 30-31 vastaanottamista varten

    Tämä on mukavaa ja yksinkertaista, se lähettää viestin sarjayhteyden kautta.

Taso

Yritän kirjoittaa opetusohjelmani niin, että joku, jolla ei ole mitään tietoa, voi ainakin seurata sitä. Saatat olla hyödyllistä katsoa ensin joitakin käsittelyä käsitteleviä opetusohjelmia. Aloitan Daniel Shiffmanin YouTube -kanavalla.

Koodi

Kaikki koodi (Arduino ja käsittely) on githubissani täällä.

Laajuus

Opin joukon tästä opetusohjelmasta https://learn.sparkfun.com/tutorials/button-pad-ho… ja suuri osa Arduino-koodista on sieltä, vaikka olen muokannut sitä toimimaan hieman eri tavalla kuin mikään siellä oleva esimerkki.

Vaihe 1: Komponentit

Komponentit!
Komponentit!
Komponentit!
Komponentit!
Komponentit!
Komponentit!
Komponentit!
Komponentit!
  • 16 x 5 mm RGB -LEDit (ei osoitettavissa, vain tavalliset tavalliset katodit)
  • 16 x 1N4148 diodia
  • Silikonipainike
  • Painikkeiden piirilevy
  • Arduino Mega
  • Käynnistyskaapelit

(Sparkfunista voi saada myös paljon tavaraa tallentamaan koko asian hieman siistimmin, mutta en ole tehnyt tätä)

Vaihe 2: Valmistele diodit

Valmistele diodit
Valmistele diodit
Valmistele diodit
Valmistele diodit
Valmistele diodit
Valmistele diodit

Taivuta kutakin diodia ja työnnä se sitten piirilevyn läpi.

Jalat tarttuvat napin puolelle, mitä emme halua. Ota sitten diodi uudelleen ulos ja leikkaa jalat lyhyiksi. (Sinulla voi olla joitain katkelmia, joiden avulla voit leikata jalat tasaisiksi laudalla, kun se on vielä olemassa, mikä helpottaa elämääsi, mutta minulla oli vain normaalit sakset, joten minun piti vetää ne ulos leikataksesi ne tarpeeksi lyhyiksi.)

On erittäin tärkeää taivuttaa jalat ja työntää ne piirilevyn läpi ennen kuin leikkaat ne lyhyiksi. Jos leikkaat ne ensin lyhyiksi, et voi taivuttaa niitä muotoon.

Tee 16 näistä pienistä muurahaisen kaltaisista esineistä.

Vaihe 3: Juottaa diodit levylle

Juotos diodit levylle
Juotos diodit levylle
Juotos diodit levylle
Juotos diodit levylle
Juotos diodit levylle
Juotos diodit levylle

Aseta kukin diodi takaisin levylle. On tärkeää tarkistaa diodin suunta. Sen toisella puolella on musta viiva, joka on linjassa piirilevyn viivan kanssa. (Katso kuva)

Diodien saaminen paikoilleen on jotenkin hankalaa, minkä vuoksi sanoin, että jos sinulla on katkoja, joiden avulla voit leikata jalat huuhtelematta poistamatta niitä, se helpottaa elämääsi. Minulla ei ollut sitä, joten asetin ne takaisin pinseteillä, mikä auttoi hieman.

Juotos jokainen diodi paikalleen.

Vaihe 4: Valmista LEDit

Valmista LEDit
Valmista LEDit
Valmista LEDit
Valmista LEDit
Valmista LEDit
Valmista LEDit
Valmista LEDit
Valmista LEDit

Työnnä LEDit levyn läpi ja leikkaa jalat pois. Aivan kuten diodien kanssa; on tärkeää työntää jalat ensin levyn läpi, jotta ne leviävät oikeisiin kulmiin ennen jalkojen leikkaamista.

Jalkojen leikkaaminen oikeaan pituuteen on hieman kokeilua ja erehdystä. Jos teet niistä liian pitkiä, ne jäävät ulos, mutta liian lyhyiksi ja LED -valon saaminen takaisin on vaikeaa.

Valmista 16 näistä pienistä amputoiduista kavereista.

Vaihe 5: Juotos LEDit levylle

Juotos LEDit levylle
Juotos LEDit levylle
Juotos LEDit levylle
Juotos LEDit levylle
Juotos LEDit levylle
Juotos LEDit levylle

Työnnä kaikki LEDit takaisin korttiin.

Suuntaus on tässä taas tärkeä. LED -valojen toisella puolella on tasainen reuna ja tämän tulee olla piirilevyn kaavion ympyrän litteän reunan kanssa. (Katso kuva)

Tarkista, ovatko LEDit työntynyt tarpeeksi pitkälle asettamalla silikonityyny levyn päälle ja tarkistamalla, etteivät ne häiritse painikkeiden painamista.

Juotos LEDit levylle.

Huomautus: Siitä lähtien minulle on huomautettu, että koska sillä ei ole niin väliä, jos vähän jalkoja tarttuu selkään, voit vain työntää LEDit läpi, juottaa ne takana ja leikata jalat pois.

Vaihe 6: Järjestä tarpeeksi hyppyjohtoja

Lajittele tarpeeksi hyppyjohtoja
Lajittele tarpeeksi hyppyjohtoja

Puhutaan hieman taulusta. Taulu on järjestetty 4 sarakkeeseen ja 4 LED -riviä/painiketta.

Jokainen sarake vaatii kaksi liitäntää, yhden LED -maadoitusta ja toisen painikkeen maadoitusta varten. Jokainen rivi vaatii 4 liitäntää, koska tarvitsemme erillisen liitännän punaiselle, vihreälle ja siniselle kanavalle sekä liitännän Tässä ovat kaapelin värit ja nastanumerot, jotka valitsin kullekin liitokselle.

Rivi Mitä varten se on Kaapelin väri Pin koodi PCB -merkintä
Rivi 1 Punainen Punainen 22 PUNAINEN 1
Vihreä Vihreä 23 VIHREÄ 1
Sininen Sininen 30 SININEN 1
Painikkeiden syöttö Keltainen 31 KYTKIN 1
Rivi 2 Punainen Punainen 24 PUNAINEN 2
Vihreä Vihreä 25 VIHREÄ2
Sininen Sininen 32 SININEN 2
Painikkeiden syöttö Keltainen 33 KYTKIN2
Rivi 3 Punainen Punainen 26 PUNAINEN 3
Vihreä Vihreä 27 VIHREÄ 3
Sininen Sininen 34 SININEN 3
Painikkeiden syöttö Keltainen 35 KYTKIN 3
Rivi 4 Punainen Punainen 28 PUNAINEN 4
Vihreä Vihreä 29 VIHREÄ 4
Sininen Sininen 36 SININEN 4
Painikkeiden syöttö Keltainen 37 KYTKIN 4
Sarake Mitä varten se on Kaapelin väri Pin koodi PCB -merkintä
Kol 1 LED -maadoitus Valkoinen 38 LED-GND-1
Napin pohja Musta 39 SWT-GND-1
Kol 2 LED -maadoitus Valkoinen 40 LED-GND-2
Napin pohja Musta 41 SWT-GND2
Kol 3 LED -maadoitus Valkoinen 42 LED-GND-3
Napin pohja Musta 43 SWT-GND3
Sarake 4 LED -maadoitus Valkoinen 44 LED-GND4
Napin pohja Musta 45 SWT-GND4

Vaihe 7: Valmistele hyppyjohdot

Valmistele hyppyjohdot
Valmistele hyppyjohdot
Valmistele hyppyjohdot
Valmistele hyppyjohdot

Jokaisella hyppyjohdolla on yksi urospää ja toinen pää, josta on poistettu muutaman mm lanka. Tykkään käyttää jonkinlaista säiliötä riisuttujen lankakappaleiden kaappaamiseen, koska muuten ne päätyvät koko asuntooni ja mahdollisesti pahempi kuin kimallus.

Vaihe 8: Juottaa hyppyjohdot kortille ja kytke ne sisään

Juotos hyppyjohtimet piirilevyyn ja kytke ne sisään
Juotos hyppyjohtimet piirilevyyn ja kytke ne sisään
Juotos hyppykaapelit levyyn ja liitä ne
Juotos hyppykaapelit levyyn ja liitä ne

Käytä kaaviota muutaman askeleen taaksepäin saadaksesi kaapelit juotettuina oikeisiin paikkoihin piirilevyllä ja kytkettynä Arduinon oikeisiin nastoihin.

Vaihe 9: Rakenna valmis

Rakenna valmis!
Rakenna valmis!

Käytä hetki juhlallisesti painaaksesi joitakin (vielä toimimattomia) painikkeita ja päästä sitten johonkin koodiin!

Vaihe 10: Kaavio

Kaavamainen
Kaavamainen

Tämä on kaavio piirilevystä ja siihen juotetuista tavaroista.

Harmaat laatikot edustavat yhtä painiketta / LED -yhdistelmää. Jos tämä näyttää erittäin monimutkaiselta (se teki minulle ensimmäisen kerran, kun näin sen), älä huoli, aion rikkoa sen.

Jos haluat vain katsoa koodin itse, se on githubissani täällä.

Vaihe 11: Vain painikkeet

Vain napit
Vain napit
Vain napit
Vain napit

LEDit ja painikkeet ovat itse asiassa erillään toisistaan (lukuun ottamatta kaikkia, jotka on kytketty Arduinoon), joten voit vain katsoa painikkeita ensin.

Jokaisessa harmaassa laatikossa on yksi painike ja diodi (ne, joihin juotimme - selitän niiden tarkoituksen vähän).

Huomautus: Olen varma, että tämä on joillekin ihmisille erittäin ilmeistä, mutta en ollut varma siitä, kun aloin ensin selvittää tätä, joten sanon sen! Rivit (vihreällä) ja sarakkeet (sinisellä) eivät ole yhteydessä toisiinsa, vaan ne on asetettu vastakkain. Tavarat yhdistetään vain silloin, kun niissä on pieni musta piste. Yhden painikekytkimen sulkeminen luo kuitenkin yhteyden rivin ja sarakkeen välille.

Vaihe 12: Määritä näppäimistöt

Asenna painikkeiden nastat
Asenna painikkeiden nastat
Asenna painikkeiden nastat
Asenna painikkeiden nastat
Asenna painikkeiden nastat
Asenna painikkeiden nastat

Painikkeissa aiomme käyttää sarakkeita lähtöinä ja rivejä tuloina.

Voimme tarkistaa, painetaanko painiketta, koska jos rivin ja sarakkeen välillä on yhteys, lähtöjännite saavuttaa tulon. Aluksi asetuksessa () annamme korkean jännitteen kaikille sarakkeille. Asetimme rivit pull up -tuloiksi, mikä tarkoittaa, että oletusarvoisesti ne lukevat myös korkeita.

Vaihe 13: Skannaus

Skannaus
Skannaus
Skannaus
Skannaus
Skannaus
Skannaus

Silmukassa toiminto (nimeltään scan ()) kulkee yhden sarakkeen kerrallaan ja asettaa sen jännitteen matalaksi.

Sitten se tarkastelee jokaista painikeliitäntäriviä, onko joku heistä lukenut heikkoa.

Jos painike on alhainen, se tarkoittaa, että riviä ja saraketta yhdistävä painike on painettu.

Vaihe 14: Kaikki painikkeen painallukset eivät ole tasavertaisia

Jos painiketta painetaan nopeasti ja lujasti, jännitteen siirto sarakkeesta riville on mukava ja puhdas.

Jos sitä kuitenkin painetaan hieman hitaasti tai hämmentävästi, jännite saattaa väristä hieman, kunnes painikelevyn ja piirilevyn koskettimien välillä on hyvä yhteys.

Tämä tarkoittaa sitä, että arduino voi tulkita painikkeen painalluksen, jonka ihminen luulee olevan vain yksi, useana erillisenä painalluksena.

Suositeltava: