Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Dobrodošli u moju prvu instrukciju
Projekt koji želim podijeliti s vama danas je Arduino labirint igra, koja je postala džepna konzola sposobna kao Arduboy i slične konzole zasnovane na Arduinu. Može se upotpuniti mojim (ili vašim) budućim igrama zahvaljujući izloženom ICSP zaglavlju.
Prije nekoliko mjeseci sam imao ideju da napravim igru labirinta na Arduinu, ali bez strogo kodiranog seta labirinta. Trebao bi moći generirati novi labirint za svaki nivo na kojem igrate, tako da više nikada nećete vidjeti isti labirint:)
Kodiranje ovoga bilo je mali izazov, budući da je Arduino ograničen u RAM memoriji, a zatim sam pronašao nekoliko primjera kako se to može učiniti jednostavnim Bo-Taoshi algoritmom.
Kôd koji sam koristio kao polaznu tačku koju sam uzeo SANUKI UDON i njegov projekat KAKO NAČINITI GENERATOR IZ MAZIRANJA KORISTEĆI ATTINY13A
Korak 1: Prototipiranje ploče
Moje polazište je bila mala ploča sa samo 4 dugmeta spojena za kretanje kroz labirint, ali kasnije kada sam odlučila da bi to trebala biti igraća konzola dodala sam još nekoliko gumba. Na većoj ploči možete vidjeti još 2 dugmeta, a kasnije sam dodao i treće koje će se koristiti kao dugme za pokretanje/pauziranje/meni
Korak 2: Potrebni dijelovi
- Arduino pro mini / Arduino Uno / Atmega328P čip
- 28 -polna DIP utičnica (opcionalno)
- SSD1306 OLED ekran
- Piezo zvučnik
- Tasteri - 7 komada
- Držači za dugmaste baterije
- Prekidač
- Žice
- Prototip pcb (60x40mm)
Korak 3: Ožičenje / shematski prikaz
Povezivanje komponenti kao što je prikazano na gornjoj shemi.
Dugmad:
- Gumb GORE: Arduino pin 7
- Tipka DOLJE: Arduino pin 6
- LIJEVO dugme: Arduino pin 9
- DESNO dugme: Arduino pin 8
- Dugme: Arduino pin 5
- Tipka B: Arduino pin 4
- Dugme START: Arduino pin 2
SSD1306 OLED ekran:
- SCL: Arduino pin A5
- SDA: Arduino pin A4
- VCC: Arduino VCC
- GND: Arduino GND
Zvučni signal:
- Zvučni signal pozitivan: Arduino pin 3
- Zvučni signal: Arduino GND
Korak 4: Izvorni kod
Izvorni kod igre A-Maze možete pronaći ovdje:
Otvorite u Arduino IDE -u i prenesite na svoju ploču ili koristite ISP programer za programiranje vašeg čipa.
Preporučujem korištenje USBTIny ISP -a, s tim nikad nije bilo problema:) ali za programiranje čipa možete koristiti i obični Arduino.
U mom slučaju nisam koristio vanjski kristal, pa moj čip Atmega328p radi na unutarnjem oscilatoru od 8 MHz.
Za više informacija posjetite ovaj link:
Korak 5: Pogledajte to na djelu
Korak 6: Slučaj i minijaturizacija
Ako želite da ovaj projekt bude trajan, s kućištem lijepog izgleda, evo jednostavne futrole za 3D ispis koju sam dizajnirao:
Na gornjim slikama možete vidjeti kako su sve komponente postavljene na 4x6 prototipu PCB -a.
Većina ožičenja gumba prolazi ispod držača baterija, pokušajte biti što jednostavniji, tako da držači baterija mogu relativno u ravnini stajati iznad ploče s žicama između njih.
Takođe preporučujem da ožičenje izvedete ispod ekrana, budući da su noge čipa Atmega lemljene i izložene ispod ekrana. Kad završite sa lemljenjem, stavite malo izolacijske trake ispod ekrana kako biste spriječili kratke hlače itd.
ICSP zaglavlje je opcionalno, a ako odlučite da ga ne otkrijete, to će vam znatno olakšati montažu, 6 veza manje za brigu, ali prvo programirajte čip prije nego što ga lemite ili upotrijebite 28 -polnu DIP utičnicu kako biste mogli jednostavno uklonite čip za programiranje.
Drugoplasirani na takmičenju veličine džepa