INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Welkom by my eerste instruksies
Die projek wat ek vandag met u wil deel, is 'n doolhofspel van Arduino, wat 'n sakkonsole geword het wat net so goed soos Arduboy en soortgelyke konsoles op Arduino gebaseer is. Dit kan met my (of u) toekomstige speletjies geflits word danksy blootgestelde ICSP -kop.
Ek het 'n paar maande gelede 'n idee gehad om 'n doolhofspel op Arduino te bou, maar sonder 'n hardgekodeerde stel doolhowe. Dit behoort 'n nuwe doolhof te kan genereer vir elke vlak wat u speel, sodat u nooit weer dieselfde doolhof kan sien nie:)
Dit was 'n bietjie uitdaging, want Arduino het 'n beperkte RAM-geheue, en ek het 'n paar voorbeelde gevind hoe dit met 'n eenvoudige Bo-Taoshi-algoritme gedoen kan word.
Kode wat ek as uitgangspunt gebruik het deur SANUKI UDON en sy projek Hoe om 'n doolhofgenerator te maak met behulp van ATTINY13A
Stap 1: Breadboard -prototipering
My beginpunt was met 'n klein broodbord met slegs 4 knoppies wat verbind was om deur die doolhof te beweeg, maar toe ek later besluit dat dit 'n spelkonsole moet wees, het ek nog 'n paar knoppies bygevoeg. Op 'n groter broodbord kan u nog twee knoppies sien, en later het ek 'n derde een bygevoeg om as begin/pouse/menu -knoppie te gebruik
Stap 2: Onderdele benodig
- Arduino pro mini / Arduino Uno / Atmega328P -chip
- 28 -pins DIP -aansluiting (opsioneel)
- SSD1306 OLED -skerm
- Piezo -spreker
- Knoppies - 7 stukke
- Houers van muntbatterye
- Wisselskakelaar
- Drade
- Prototipe PCB (60x40mm)
Stap 3: Breadboard bedrading / skematiese
Verbind komponente soos in diagram hierbo getoon.
Knoppies:
- UP -knoppie: Arduino -pen 7
- AF -knoppie: Arduino -pen 6
- LINKS -knoppie: Arduino -pen 9
- REGS -knoppie: Arduino -pen 8
- 'N Knoppie: Arduino -pen 5
- B -knoppie: Arduino -pen 4
- START -knoppie: Arduino -pen 2
SSD1306 OLED -skerm:
- SCL: Arduino -pen A5
- SDA: Arduino -pen A4
- VCC: Arduino VCC
- GND: Arduino GND
Gonser:
- Gonser positief: Arduino -pen 3
- Gonser grond: Arduino GND
Stap 4: Bronkode
Die bronkode van die A-Maze-speletjie kan hier gevind word:
Maak oop in Arduino IDE en laai op na u bord of gebruik ISP -programmeerder om u chip te programmeer.
Ek beveel aan dat u USBTIny ISP gebruik, ek het nog nooit probleme daarmee gehad nie:) maar u kan ook gewone Arduino gebruik om u chip te programmeer.
In my geval het ek geen eksterne kristal gebruik nie, dus werk my Atmega328p -chip op 'n interne ossillator wat 8MhZ is.
Besoek hierdie skakel vir meer inligting:
Stap 5: Sien dit in aksie
Stap 6: Omhulsel en miniatuur
As u hierdie projek permanent wil maak, met 'n mooi omhulsel, is die eenvoudige 3D -drukbare omhulsel wat ek ontwerp het:
Op die foto's hierbo kan u sien hoe alle komponente op die 4x6 prototipe PCB uiteengesit is.
Die meeste bedrading van die knoppies gaan onder die batteryhouers, probeer om dit so eenvoudig as moontlik te maak, sodat batteryhouers relatief gelyk kan wees bo die bord met drade tussenin.
Ek beveel ook aan dat u ander bedrading onder die skerm doen, aangesien Atmega -skyfbene gesoldeer en blootgestel word onder die skerm. As u klaar is met soldeer, plaas 'n bietjie isolasieband onder die skerm om kortbroek, ens.
ICSP -kop is opsioneel, en as u besluit om dit nie bloot te stel nie, sal dit u vergadering baie makliker maak, 6 aansluitings minder om te versorg, maar programmeer eers die chip voordat u dit soldeer, of gebruik 'n 28 -pins DIP -aansluiting sodat u dit maklik kan doen verwyder die chip vir programmering.
Naaswenner in die sakgrootte-kompetisie