Innholdsfortegnelse:
Video: Slange på et brødbrett: 3 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
"Har du noen spill på telefonen?"
"Ikke akkurat."
Intro:
Enkel å kontrollere, enkel å programmere og foreviget av Nokia 6110, har Snake blitt et favorittprosjekt blant ingeniører. Den er implementert i alt fra LED -matriser, LCD -skjermer, bokhyllebelysning og til og med vinduer i hele bygninger. Vi skal implementere Snake på et lite brødbrett og en OLED -skjerm. Folk har absolutt laget smalere slangespillere, men dette bruker spesielt et brødbrett, og fjerner behovet for å designe PCB eller loddetinn.
(Du kan bare lage en app på telefonen din, men vi gjør ikke ting fordi de er enkle.)
Forutsetninger:
En grunnleggende forståelse av kretser, hvordan brødbrett og en solid forståelse av programmering i Arduino.
Rekvisita
- Arduino Nano
- 2 rimelig høye motstander (1kOhm)
- Liten brødbrett
- 2 Trykknapper
- 22 AWG solid kjernetråd
- 128 x 64 OLED
Dette er Amazon -tilknyttede lenker, så jeg tjener en liten provisjon for hvert salg. Hvis du ikke allerede har disse forsyningene og vil støtte fremtidige prosjekter av meg, følg disse linkene!:)
Trinn 1: Brødbrett
For å lage vårt endelige produkt må vi selvsagt sette sammen maskinvaren for å programmere og teste prosjektet vårt. Systemdiagrammet for dette prosjektet er ganske enkelt, siden det bare omfatter totalt 4 komponenter.
1. Legg det ut:
Ta komponentene dine og legg dem ut på brettet, og sørg for at alt passer. Visualiser hvilke ledninger og pinner du skal bruke og til hvilke formål. Sørg for at de forventede ledningene ikke krysser hverandre, for det gir et mer rotete brødbrett. Skriv ned hvilke punkter du må koble til! Selv om dette er et enkelt brødbrett, vil det gjøre livet ditt mye lettere under ledningsprosessen og generelt. På grunn av hvor lite arbeidsområdet vårt er, er dette et utrolig viktig skritt.
Merknader:
Fordi OLED bruker I2C -bussen, må pinner A4 og A5 brukes. Størrelsen på brødbrettet tillater ikke strøm- og bakkeskinne, så jeg brukte noen få triks for å få alt til å fungere. Den positive spenningen for knappene er levert av pinnene D13 og A2. Jeg oppdaget at Arduino -pinner ikke bare kan levere strøm, men også synke strøm, og derfor brukte jeg A3 som grunn for den høyre knappen. For å maksimere plassen på brødbrettet, hang jeg halvparten av Nano av brettet og støttet de venstre sidepinnene med et stykke skum.
2. Koble det ut:
Med et par wire strippere og en anstendig mengde 22 AWG solid kjernetråd, koble komponentene pent sammen. Det er viktig å bruke solid kjerne for å lage semi-permanente brødbrettprosjekter, fordi du kan trimme dem til lengde, i motsetning til jumperkabler. Pass på at du ikke legger igjen for mye lengde på ledningene dine, det vil gi et rotete brett. Trim ledningene til nedtrekksmotstandene slik at de passer i flukt med brettet.
(Du kan også bare følge det jeg har gjort ovenfor.)
Trinn 2: Program og test
For å spare hodepine senere, må du sørge for at OLED og knappene fungerer slik de skal ved å lage grunnleggende testprogrammer.
1. Planlegg, planlegg, planlegg:
Bare å hoppe rett inn i koden er ikke en klok praksis. Stol på meg, jeg har prøvd! Derfor bør du skissere hvordan programmet ditt vil fungere. Et programflytdiagram er en ganske solid måte å planlegge hva koden din trenger å gjøre, og vil definitivt holde deg på sporet. Ta mitt for eksempel (ovenfor)
2. Kode, kode, kode:
Oppriktig er dette prosjektet en større programmeringsøvelse enn det er en maskinvareøvelse. Det eneste biblioteket jeg brukte var Adafruits OLED -bibliotek, uten å telle de støttende GFX- og Wire -bibliotekene.
Få deg til å installere Adafruits OLED -bibliotek via Arduino IDEs biblioteksjef.
Jeg kan ikke dokumentere hver eneste kodelinje jeg skrev, men her er noen tips:
Tips:
Kommentarer:
- Først og fremst skriver du fine og nyttige kommentarer mens du koder. Framtidig deg og andre som leser koden din, vil definitivt takke deg.
Hukommelse:
- Med mer komplekse prosjekter som disse, blir SRAM ganske populær. I Adafruit -biblioteket tar 128 x 64 OLED -bufferen 1 kB alene, som er omtrent halvparten av minnet i en ATMega328p. Derfor er smart minnehåndtering viktigere enn noensinne.
- Med store datastrukturer vil dataene som lagres, akkumulere og ta mye plass. For å redusere minnefotavtrykket til variablene mine, brukte jeg mindre datatyper (som kort og byte) når jeg kunne.
- Strenger lagres vanligvis i SRAM, men bruk av F () -funksjonen vil sette dem i PROGMEM i stedet for å spare dyrebart minne.
Millis:
- For å oppnå mer nøyaktig timing av spillsykluser, bruk millis () -funksjonen. Det er mange gode opplæringsprogrammer og eksempler på nettet.
Forhåndsdefinere:
- Bruk #define preprocessor -direktivet som en enkel måte å angi permanente verdier i kode.
Test:
- Test koden din mens du går. Det blir mye lettere å rutte ut feil.
Trinn 3: Kos deg
Ha det gøy med ditt nye slangespill!
(Jeg vet at jeg vant på 20 poeng i videoen ovenfor, du kan angi gevinstbetingelsen høyere i koden min.)
Ting å utvide:
- Et batteri for bærbarhet
- Sikrere knapper
- Et enda mindre slangespill
- Enda flere spill?
Anbefalt:
Lag et brødbrett for elektroniske kretser - Papercliptronics: 18 trinn (med bilder)
Lag et brødbrett for elektroniske kretser-Papercliptronics: Dette er STERKE og PERMANENTE elektroniske kretser. For gjeldende oppdateringer, besøk papercliptronics.weebly.com Nyt vår trinnvise opplæring om hvordan du lager hjemmelagde elektroniske kretser
DIY fjernkontrollbryter Kit av 2262/2272 M4 brødbrett og relé for maker: 4 trinn (med bilder)
DIY fjernkontrollbrytersett fra 2262/2272 M4 brødbrett og relé for maker: smart hjem kommer til vårt liv. Hvis vi vil at et smart hjem skal gå i oppfyllelse, trenger vi mange fjernkontroller. i dag skal vi gjøre en test, gjøre en enkel krets for å lære teorien om fjernkontrollbryteren. dette settdesignet av SINONING ROBOT
Lag et LEGO brødbrett: 9 trinn (med bilder)
Lag et LEGO brødbrett: Vi har allerede mange forskjellige typer brødbrett! Hvorfor lage en til? Jeg har flere grunner:- Det er en fin måte å lære noen hvordan et brødbrett fungerer og det grunnleggende om prototypekretser uten å vise dem et kjedelig diagram.- Det er morsomt.- LE
Arduino som et billig brødbrett FPGA: 5 trinn (med bilder)
Arduino Som en billig brødbrett FPGA: Å designe maskinvarelogikkretser kan være morsomt. Den gamle skolemåten for å gjøre dette var med NAND -porter, på et brødbrett, kablet med hoppetråder. Dette er fortsatt mulig, men det skal ikke så mye til før antall porter går ut av hånden. Et nyere alternativ
TfCD - Selvkjørende brødbrett: 6 trinn (med bilder)
TfCD-Selvkjørende brødbrett: I denne instruksen vil vi demonstrere en av teknologiene som ofte brukes i autonome kjøretøyer: ultralyddeteksjon av hindringer. I selvkjørende biler brukes denne teknologien til å gjenkjenne hindringer over korte avstander (< 4m), f