Talaan ng mga Nilalaman:

Ahas sa isang Breadboard: 3 Hakbang (na may Mga Larawan)
Ahas sa isang Breadboard: 3 Hakbang (na may Mga Larawan)

Video: Ahas sa isang Breadboard: 3 Hakbang (na may Mga Larawan)

Video: Ahas sa isang Breadboard: 3 Hakbang (na may Mga Larawan)
Video: SLAYERS (NEXT) | Season 2 | Japanese Anime 1995 | Part 2 2024, Nobyembre
Anonim
Ahas sa isang Breadboard
Ahas sa isang Breadboard
Ahas sa isang Breadboard
Ahas sa isang Breadboard
Ahas sa isang Breadboard
Ahas sa isang Breadboard

"May mga laro ba sa iyong telepono?"

"Hindi eksakto."

Panimula:

Simpleng kontrolin, madaling programa, at walang kamatayan ng Nokia 6110, ang Ahas ay naging isang paboritong proyekto sa mga inhinyero. Naipatupad ito sa anumang bagay mula sa mga LED matrice, LCD, ilaw ng bookhelf, at kahit mga bintana ng buong mga gusali. Ipapatupad namin ang Ahas sa isang maliit na breadboard at isang OLED screen. Tiyak na nakagawa ng mga tao ang mas maraming mga manlalaro ng ahas, ngunit partikular na gumagamit ito ng isang breadboard, inaalis ang pangangailangan na magdisenyo ng mga PCB o solder.

(Maaari ka lamang gumawa ng isang app sa iyong telepono, ngunit hindi namin ginagawa ang mga bagay dahil madali ang mga ito.)

Mga Pangangailangan:

Isang pangunahing pag-unawa sa mga circuit, kung paano mag-breadboard, at isang mahigpit na pag-unawa ng programa sa Arduino.

Mga gamit

  • Arduino Nano
  • 2 makatuwirang mataas na resistors (1kOhm)
  • Napakaliit na pisara
  • 2 Mga Pushbutton
  • 22 AWG solidong core wire
  • 128 x 64 OLED

Ito ang mga link ng kaakibat ng Amazon kaya kumikita ako ng kaunting komisyon sa bawat pagbebenta. Kung wala ka pang mga supply na ito at nais mong suportahan ang mga susunod kong proyekto, sundin ang mga link na ito!:)

Hakbang 1: Breadboard

Breadboard
Breadboard
Breadboard
Breadboard
Breadboard
Breadboard

Upang makagawa ng aming panghuling produkto, malinaw na kailangan nating tipunin ang hardware upang mai-program at subukan ang aming proyekto. Ang diagram ng system para sa proyektong ito ay medyo simple, dahil nagsasama lamang ito ng kabuuang 4 na bahagi.

1. Ilatag ito:

Dalhin ang iyong mga sangkap at ilatag ang mga ito sa board, tinitiyak na umaangkop ang lahat. I-visualize kung anong mga wire at pin ang iyong gagamitin at para sa kung anong mga layunin. Siguraduhin na ang iyong inaasahang mga wire ay hindi tumatawid, dahil gumagawa ito sa isang mas maramihang breadboard. Isulat kung anong mga puntos ang kakailanganin mong kumonekta! Bagaman ito ay isang simpleng pisara, gagawin nitong mas madali ang iyong buhay sa panahon ng proseso ng mga kable at sa pangkalahatan. Dahil sa kung gaano kaliit ang aming workspace, ito ay isang hindi kapani-paniwalang mahalagang hakbang.

Mga Tala:

Dahil ang OLED ay gumagamit ng I2C bus, dapat gamitin ang mga pin A4 at A5. Hindi pinapayagan ng laki ng breadboard para sa isang power at ground rail, kaya gumamit ako ng ilang mga trick upang magawa ang lahat. Ang positibong boltahe para sa mga pindutan ay ibinibigay ng mga pin na D13 at A2. Natuklasan ko na ang mga pin ng Arduino ay hindi lamang maaaring magbigay ng kasalukuyang, ngunit ang kasalukuyang paglubog din, sa gayon ginamit ko ang A3 bilang isang lupa para sa kanang pindutan. Upang mapakinabangan ang puwang sa breadboard, isinabit ko ang kalahati ng Nano mula sa pisara at sinuportahan ang mga kaliwang gilid na pin na may isang piraso ng bula.

2. Wire ito:

Sa pamamagitan ng isang pares ng wire striper at isang disenteng halaga ng 22 AWG solid core wire, maayos na i-wire ang iyong mga bahagi. Ang paggamit ng solidong core para sa paggawa ng mga semi-permanenteng proyekto sa breadboard ay susi, dahil maaari mong i-trim ang mga ito hanggang sa haba, hindi katulad ng mga jumper wires. Tiyaking hindi ka nag-iiwan ng labis na haba sa iyong mga wires, gagawa ito para sa isang kalat na board. Putulin ang mga lead ng pull-down resistors upang magkasya silang flush sa board.

(Maaari mo ring sundin kung ano ang nagawa ko sa itaas.)

Hakbang 2: Programa at Pagsubok

Programa at Pagsubok
Programa at Pagsubok

Upang mai-save ang iyong sarili sa isang sakit ng ulo mamaya, siguraduhin na ang OLED at ang mga pindutan ay gumagana sa paraang dapat sa pamamagitan ng paggawa ng pangunahing mga programa sa pagsubok.

1. Magplano, magplano, magplano:

Ang paglukso mismo sa code ay hindi isang matalinong kasanayan. Tiwala sa akin, sinubukan ko na! Iyon ang dahilan kung bakit dapat mong balangkasin kung paano gagana ang iyong programa. Ang tsart ng daloy ng programa ay isang medyo solidong paraan upang planuhin kung ano ang kailangang gawin ng iyong code at tiyak na panatilihin kang nasa track. Dalhin ang halimbawa (sa itaas)

2. Code, code, code:

Sa totoo lang, ang proyektong ito ay isang mas malaking ehersisyo sa programa kaysa sa ito ay isang ehersisyo sa hardware. Ang nag-iisang library na ginamit ko ay ang library ng OLED ng Adafruit, hindi binibilang ang sumusuporta sa mga aklatan ng GFX at Wire.

Ipa-install mo ang library ng OLED ng Adafruit sa pamamagitan ng manager ng library ng Arduino IDE.

Hindi ko ma-dokumento ang bawat solong linya ng code na aking sinulat, ngunit narito ang ilang mga tip:

Mga Tip:

Mga Komento:

- Una at pinakamahalaga, sumulat ng maayos at kapaki-pakinabang na mga komento habang nag-code ka. Sa hinaharap ikaw at ang iba na nagbasa ng iyong code ay tiyak na magpapasalamat sa iyo.

Memorya:

- Sa mas kumplikadong mga proyekto tulad nito, ang SRAM ay naging pinakamainit na kalakal. Sa Adafruit library, ang 128 x 64 OLED buffer ay tumatagal ng 1 kB lamang, na halos kalahati ng memorya sa isang ATMega328p. Samakatuwid ang pamamahala ng matalinong memorya ay mas mahalaga kaysa dati.

- Sa malalaking istraktura ng data, ang data na hawak ay makakaipon at magtatagal ng maraming puwang. Upang mabawasan ang memorya ng bakas ng paa ng aking mga variable, gumamit ako ng mas maliit na mga uri ng data (tulad ng maikli at byte) nang kaya ko.

- Karaniwang nakaimbak ang mga string sa SRAM, ngunit ang paggamit ng pagpapaandar na F () ay ilalagay ang mga ito sa PROGMEM sa halip, nagse-save ng mahalagang memorya.

Millis:

- Upang makamit ang mas tumpak na tiyempo ng mga siklo ng laro, gamitin ang pagpapaandar ng millis (). Maraming mga magagandang tutorial at halimbawa sa online.

Paunang tukuyin:

- Gamitin ang direktoryo ng #define preprocessor bilang isang madaling paraan upang magtakda ng mga permanenteng halaga sa code.

Pagsusulit:

- Subukan ang iyong code sa iyong pagpunta. Mas magiging madali ang pag-alis ng mga bug.

Hakbang 3: Mag-enjoy

Magsaya sa iyong bagong laro ng ahas!

(Alam kong nanalo ako sa 20 puntos sa video sa itaas, maitatakda mo ang kondisyon ng panalo na mas mataas sa aking code.)

Mga bagay na lalawak sa:

  • Isang baterya para sa kakayahang dalhin
  • Mas ligtas na mga pindutan
  • Isang mas maliit pang larong ahas
  • Kahit na maraming mga laro?

Inirerekumendang: