Sisällysluettelo:

Käärme leipälaudalla: 3 vaihetta (kuvilla)
Käärme leipälaudalla: 3 vaihetta (kuvilla)

Video: Käärme leipälaudalla: 3 vaihetta (kuvilla)

Video: Käärme leipälaudalla: 3 vaihetta (kuvilla)
Video: Maija Kauhanen - Käärme (Official Music Video) 2024, Marraskuu
Anonim
Käärme leipälaudalla
Käärme leipälaudalla
Käärme leipälaudalla
Käärme leipälaudalla
Käärme leipälaudalla
Käärme leipälaudalla

"Onko puhelimessasi pelejä?"

"Ei oikeastaan."

Esittely:

Helppo hallita, helppo ohjelmoida ja ikuistaa Nokia 6110: n, Snakesta on tullut insinöörien suosikkihanke. Se on toteutettu kaikkeen LED -matriiseihin, nestekidenäyttöihin, kirjahyllyvalaistukseen ja jopa kokonaisten rakennusten ikkunoihin. Toteutamme Snaken pienellä leipäpöydällä ja OLED -näytöllä. Ihmiset ovat varmasti tehneet pienempiä käärmepelaajia, mutta tämä käyttää erityisesti leipälevyä, jolloin PCB- tai juotossuunnittelun tarve ei ole tarpeen.

(Voit vain luoda sovelluksen puhelimeesi, mutta emme tee asioita, koska ne ovat helppoja.)

Edellytykset:

Perustiedot piiristä, leipälevystä ja vankka käsitys ohjelmoinnista Arduinossa.

Tarvikkeet

  • Arduino Nano
  • 2 kohtuullisen suurta vastusta (1 kOhm)
  • Pieni leipälauta
  • 2 Painikkeet
  • 22 AWG -johdinlanka
  • 128 x 64 OLED

Nämä ovat Amazon -kumppanilinkkejä, joten ansaitsen pienen palkkion jokaisesta myynnistä. Jos sinulla ei vielä ole näitä tarvikkeita ja haluat tukea tulevia projekteitani, seuraa näitä linkkejä!:)

Vaihe 1: Leipälevy

Leipälauta
Leipälauta
Leipälauta
Leipälauta
Leipälauta
Leipälauta

Voidaksemme tehdä lopputuotteen meidän on tietysti koottava laitteisto ohjelmoitavaksi ja testattavaksi. Tämän projektin järjestelmäkaavio on melko yksinkertainen, koska se sisältää vain yhteensä 4 komponenttia.

1. Aseta se:

Ota komponentit ja aseta ne taululle varmistaen, että kaikki sopii. Visualisoi mitä johtoja ja nastoja käytät ja mihin tarkoituksiin. Varmista, että odotetut johdot eivät mene ristiin, koska se tekee sotkuisemmasta leipälevystä. Kirjoita ylös, mitkä pisteet sinun täytyy yhdistää! Vaikka tämä on yksinkertainen leipälauta, se helpottaa elämääsi johdotusprosessin aikana ja yleensä. Koska työtilamme on pieni, tämä on uskomattoman tärkeä askel.

Huomautuksia:

Koska OLED käyttää I2C -väylää, on käytettävä tappeja A4 ja A5. Leipälaudan koko ei salli virta- ja maadoituskiskoa, joten käytin muutamia temppuja saadakseni kaiken toimimaan. Painikkeiden positiivinen jännite syötetään nastoilla D13 ja A2. Huomasin, että Arduino -nastat voivat paitsi syöttää virtaa myös upottaa virran, joten käytin A3: ta oikean painikkeen maadoituksena. Maksimoidaksesi tilan leipälaudalla, ripustin puolet nanosta irti levyltä ja tuki vasemmanpuoleisia tappeja vaahtomuovilla.

2. Johda se:

Johdinkuorimaparien ja kunnollisen määrän 22 AWG: n kiinteää ydinlankaa yhdistä komponentit siististi yhteen. Kiinteän ytimen käyttäminen puolipysyvien leipälautaprojektien tekemiseen on avain, koska voit leikata ne pituuteensa toisin kuin hyppyjohtimet. Varmista, ettet jätä liikaa pituutta johtoihisi, se tekee sotkuisesta levystä. Leikkaa alasvetovastusten johdot niin, että ne sopivat tasolle levyn kanssa.

(Voit myös seurata mitä olen tehnyt edellä.)

Vaihe 2: Ohjelmoi ja testaa

Ohjelma ja testi
Ohjelma ja testi

Jos haluat säästää päänsärkyäsi myöhemmin, varmista, että OLED ja painikkeet toimivat haluamallasi tavalla tekemällä perustestausohjelmia.

1. Suunnittele, suunnittele, suunnittele:

Vain hyppääminen suoraan koodiin ei ole viisas käytäntö. Luota minuun, olen yrittänyt! Siksi sinun pitäisi hahmotella, miten ohjelmasi toimii. Ohjelman vuokaavio on melko vankka tapa suunnitella, mitä koodisi tarvitsee tehdä, ja pitää sinut varmasti oikealla tiellä. Otetaan esimerkiksi minun (yllä)

2. Koodi, koodi, koodi:

Suoraan sanottuna tämä projekti on suurempi ohjelmointitehtävä kuin laitteistoharjoitus. Ainoa käyttämäni kirjasto oli Adafruitin OLED -kirjasto, lukuun ottamatta GFX- ja Wire -kirjastoja.

Asenna Adafruitin OLED -kirjasto Arduino IDE: n kirjastonhallinnan kautta.

En voi dokumentoida jokaista kirjoittamaani koodiriviä, mutta tässä on muutamia vinkkejä:

Vinkkejä:

Kommentit:

- Kirjoita ennen kaikkea siistit ja hyödylliset kommentit koodatessasi. Tulevaisuudessa sinä ja muut, jotka lukevat koodisi, ovat varmasti kiitollisia.

Muisti:

- Tällaisten monimutkaisempien projektien myötä SRAMista tulee varsin kuuma tuote. Adafruit -kirjastossa 128 x 64 OLED -puskuri vie yksin 1 kt, mikä on noin puolet ATMega328p -muistista. Siksi älykäs muistinhallinta on tärkeämpää kuin koskaan.

- Suurten tietorakenteiden avulla säilytettävät tiedot kerääntyvät ja vievät paljon tilaa. Vähentääkseni muuttujien muistijalanjälkeä käytin pienempiä tietotyyppejä (kuten lyhyitä ja tavuja) aina kun se oli mahdollista.

- Merkkijonot tallennetaan yleensä SRAM -muistiin, mutta F () -toiminnon käyttäminen asettaa ne sen sijaan ohjelmointiin, mikä säästää arvokasta muistia.

Millis:

- Käytä pelisyklien tarkempaa ajoitusta käyttämällä millis () -toimintoa. Netistä löytyy paljon hyviä opetusohjelmia ja esimerkkejä.

Määrittele etukäteen:

- Käytä #define -esikäsittelydirektiiviä helpona tapana asettaa pysyviä arvoja koodiin.

Testata:

- Testaa koodisi. Virheiden poistaminen on paljon helpompaa.

Vaihe 3: Nauti

Pidä hauskaa uuden käärmepelisi kanssa!

(Tiedän, että voitin 20 pisteellä yllä olevassa videossa, voit asettaa voittosuhteen korkeammaksi koodissani.)

Laajennettavia asioita:

  • Kannettava akku
  • Turvallisemmat painikkeet
  • Vielä pienempi käärmepeli
  • Vielä enemmän pelejä?

Suositeltava: