Innholdsfortegnelse:
- Trinn 1: Funksjoner
- Trinn 2: Start avspillingen
- Trinn 3: AutoPowerOff -funksjoner
- Trinn 4: La oss begynne å bygge
- Trinn 5: AutoPowerOff -versjon
- Trinn 6: Skissen
- Trinn 7: Modifikasjoner
- Trinn 8: Fullfør
Video: BrainGame: 8 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Hei i denne instruksjonen, jeg vil vise hvordan du bygger et lite spill som brukes til å trene matematikk, med en Arduino Uno og en Oled -skjerm.
Det hele begynte da jeg hjalp sønnen min med skolearbeidet.
Jeg kom på ideen for å bruke en enhet til å trene den analoge klokken og grunnleggende regning.
Hvis du har lest min andre instruksjon, "OLEDDICE", kjenner du sannsynligvis boksen og andre ting fra det prosjektet.
Da jeg gjorde designet for terningprosjektet, kjøpte jeg flere skreddersydde PCB-er og designet dem for en bestemt boks, derfor vil jeg bruke den på nytt til mange bærbare prosjekter.
På grunn av ovennevnte viser videoen det endelige tilpassede hjernespillet og hvordan du bruker det, men i denne instruksjonen vil jeg beskrive hvordan du bygger det på et brødbrett.
Det er to versjoner tilgjengelig.
1. Standardversjon
2. AutoPowerOff -versjon
AutoPowerOff -versjonen har noen ekstra komponenter lagt til for å slå av strømmen automatisk for å spare batterier.
Det er det perfekte valget hvis du, som meg, lager en til å være bærbar.
Trinn 1: Funksjoner
Funksjonene beskrevet nedenfor er de samme for begge versjonene, bortsett fra AutoPowerOff -funksjonen.
Spillet har tre standard kortvarige PCB -brytere for kontrollen.
Velg, OK og Tilbake
Slik spiller du.
Når du starter spillet for første gang, blir du bedt om å velge spill fra spillmenyen.
Du kan velge mellom 2 sider.
Første side:
- addisjon
- subtraksjon
- multiplikasjon
- inndeling
Andre side:
- binær konvertering
- hex konvertering
- Analoge klokkeavlesninger
- Tilfeldig modus som går gjennom grunnleggende matematikk.
Når du har bestemt deg for hvilket spill du vil spille, trykker du OK og du går til neste meny for å velge
nivå fra 1-4
Hvis du trykker på tilbakeknappen, går du tilbake til forrige meny.
Trinn 2: Start avspillingen
Trykk på ok for å starte avspillingen.
Spill 1-4
Hvis du har valgt spill fra den første menyen, vil du ha et spørsmål og en voksende tidslinje nederst på skjermen. Når tiden er ute vil spillet vise det riktige svaret.
Hvis du treffer ok igjen, får du en ny oppgave.
Spill 5-8
Hvis du velger konvertering fra den andre siden, er oppførselen lik, men her må du tilfeldig konvertere, fra eller til, mellom desimal, binær eller hex.
Når du spiller dette spillet, har du ikke tidslinjen, bare trykk på ok når du er klar til å vise svaret.
Det siste spillet er de analoge klokkeavlesningene. Når du trykker på ok begynner klokken å spinne og bremse et tilfeldig antall ganger før den stopper, og du blir deretter bedt om å svare på hva klokken er.
For å gjøre det lettere, stopper klokken alltid med 5 minutters mellomrom.
For alle spill vil du ha et lydsignal når du spiller hvis lyden er aktivert.
For å aktivere eller deaktivere lyden, trykk og hold tilbake -knappen i mer enn 1 sek. Hvis lyden er deaktivert, er det et lite dempesymbol i øvre høyre hjørne.
Trinn 3: AutoPowerOff -funksjoner
Hvis du bygger AutoPowerOff -versjonen, er det noen få ekstra funksjoner.
Du slår på enheten ved å holde ok -knappen et sekund. Spillet kjører i omtrent 60 sekunder før du får en advarsel om automatisk avslåing, hvis du ikke spiller noe spill.
Hvis du ikke trykker på noen knapp, går strømmen av. Dette sikrer at du aldri vil glemme å slå av spillet.
Trykk på en hvilken som helst knapp for å tilbakestille timeren.
Hvis du holder tilbake -knappen i mer enn tre sekunder og slipper den, tvinges spillet til å slå seg av.
Skissen bruker EEPROM -biblioteket som følger med Arduino IDE til å lagre data.
Like før strømmen går av, lagrer mikrokontrolleren den siste tilstanden og husker dem ved neste omstart, spill, nivå og lydtilstand.
Trinn 4: La oss begynne å bygge
Dette er hva du trenger.
Begge versjonene:
1 Arduino Uno
1 0,96 i2c Oled -display Oled -skjerm
3 kortvarige trykknapper PCB -bryter
3 motstander 10K
1 Piezo -element
1 loddefritt brødbrett
noen hoppetråder.
AutoPowerOff -versjon:
For AutoPowerOff -versjonen trenger du også.
1 Pfet Transistor IRF9640 eller lignende
1 NPN Transitor BC547 eller lignende
2 dioder 1N4148
1 Spenningsregulator 7805
2 motstander 100K
2 kondensatorer 10uF
1 kondensator 0, 1uF
1 9 volt batteri
Å bygge standardversjonen handler bare om å koble til oled -skjermen, piezo, knappene og pullup -motstandene. se det fresende bildet ovenfor.
SCL på displayet er koblet til Analog5 og SDA er koblet til Analog4 på Arduino.
Trinn 5: AutoPowerOff -versjon
Hvis du bygger Autopoweroff -versjonen, må du legge til de ekstra komponentene fra listen i brødbrettet.
Vær oppmerksom på at du må flytte 10K pullup -motstanden for Ok -knappen til strømkontrollkretsen og legge til ekstra ledning fra digital utgang 8.
Sørg også for å drive Arduino gjennom 5 Volt -pinnen på toppen (ikke gjennom DC -kontakten på siden).
Du må også fjerne USB -kabelen når skissen er lastet, ellers fungerer ikke den automatiske strømmen av, avhengig av at Arduino drives av USB selv om kretsen er slått av.
Slik fungerer kretsen for automatisk avslåing.
Når du trykker på ok -knappen, vil spenningsfallet på PFet: s Gate la strømmen fra batteriet strømme gjennom transistoren til spenningsregulatoren som stabiliserer spenningen til 5 Volt.
Når Arduino får strøm, er den digitale pinnen 8 satt til logisk HØY og pinnen er koblet til basen på BC547 som vil låse kretsen så lenge den digitale pinnen 8 er HØY.
Ok -knappen styrer også den digitale inngangen 7 på Arduino gjennom dioden D2.
Trinn 6: Skissen
Skissen bruker U8g2 -biblioteket for visningen, du finner den her.
Last ned og installer før du kompilerer koden.
Trenger du hjelp til å installere bibliotekets? Https: //www.arduino.cc/en/guide/Libraries
VIKTIG:
Du bruker den samme skissen for begge versjonene, men du må ekskludere "#define AUTOPOWER" i begynnelsen av skissen hvis du bygger standardversjonen.
Trinn 7: Modifikasjoner
Det er noen få parametere i skissen som brukeren kanskje vil endre for å passe bedre til spillerens referanser.
- På tide å tenke på forskjellige nivåer.
- Tilfeldig rekkevidde for forskjellige spill og nivåer.
Random numbers -området er lagret i en 2dim -matrise for hvert spill og hvert nivå.
Hvis du bruker en oled med en annen I2c -adresse enn standard, kan du enkelt endre den slik at den passer til skjermen.
Trinn 8: Fullfør
Du er ferdig.
Jeg håper du liker prosjektet og spillet.
Ha det gøy.
Tomas
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn
RC -sporet robot ved bruk av Arduino - Steg for trinn: Hei folkens, jeg er tilbake med et annet kult Robot -chassis fra BangGood. Håper du har gått gjennom våre tidligere prosjekter - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms og The Badland Braw
Hvordan lage et nettsted (en trinn-for-trinn-guide): 4 trinn
Hvordan lage et nettsted (en trinn-for-trinn-guide): I denne veiledningen vil jeg vise deg hvordan de fleste webutviklere bygger nettstedene sine og hvordan du kan unngå dyre nettstedbyggere som ofte er for begrenset til et større nettsted. hjelpe deg med å unngå noen feil som jeg gjorde da jeg begynte