INHOUDSOPGAWE:

Slang op 'n broodbord: 3 stappe (met foto's)
Slang op 'n broodbord: 3 stappe (met foto's)

Video: Slang op 'n broodbord: 3 stappe (met foto's)

Video: Slang op 'n broodbord: 3 stappe (met foto's)
Video: ELBERT HELPT BIJ EEN BEVALLING - TOPDOKS EXTRA 2024, Desember
Anonim
Slang op 'n broodbord
Slang op 'n broodbord
Slang op 'n broodbord
Slang op 'n broodbord
Slang op 'n broodbord
Slang op 'n broodbord

"Het u speletjies op u telefoon?"

"Nie heeltemal nie."

Inleiding:

Snake is eenvoudig om te beheer, maklik om te programmeer en te verewig deur die Nokia 6110. Dit is 'n gunsteling projek onder ingenieurs. Dit is geïmplementeer in alles van LED -matrikse, LCD's, boekrakbeligting en selfs vensters van hele geboue. Ons implementeer Snake op 'n klein broodbord en 'n OLED -skerm. Mense het beslis klein slangspelers gemaak, maar dit gebruik spesifiek 'n broodbord, wat die behoefte om PCB's of soldeersels te ontwerp, verwyder.

(U kan net 'n app op u telefoon maak, maar ons doen nie dinge nie, want dit is maklik.)

Voorvereistes:

'N Basiese begrip van stroombane, hoe om broodplank te maak en 'n goeie begrip van die programmering in Arduino.

Voorrade

  • Arduino Nano
  • 2 redelike hoë weerstande (1 kOhm)
  • Klein broodbord
  • 2 drukknoppies
  • 22 AWG soliede kerndraad
  • 128 x 64 OLED

Dit is Amazon -aangeslote skakels, so ek verdien 'n bietjie kommissie met elke verkoop. Volg hierdie skakels as u nog nie hierdie voorrade het nie en toekomstige projekte van my wil ondersteun!:)

Stap 1: Broodbord

Broodbord
Broodbord
Broodbord
Broodbord
Broodbord
Broodbord

Om ons finale produk te maak, moet ons natuurlik die hardeware bymekaarmaak om ons projek te programmeer en te toets. Die stelseldiagram vir hierdie projek is redelik eenvoudig, aangesien dit slegs 4 komponente bevat.

1. Lê dit uit:

Neem u komponente en lê dit op die bord om seker te maak dat alles pas. Visualiseer watter drade en penne u gaan gebruik en vir watter doeleindes. Maak seker dat u verwagte drade nie kruis nie, want dit sorg vir 'n morsiger broodbord. Skryf neer watter punte u moet verbind! Alhoewel dit 'n eenvoudige broodbord is, sal dit u lewe baie makliker maak tydens die bedrading en in die algemeen. Vanweë hoe klein ons werkruimte is, is dit 'n ongelooflike belangrike stap.

Notas:

Omdat die OLED die I2C -bus gebruik, moet penne A4 en A5 gebruik word. Die grootte van die broodbord maak nie voorsiening vir 'n krag- en grondrail nie, so ek het 'n paar truuks gebruik om alles te laat werk. Die positiewe spanning vir die knoppies word verskaf deur penne D13 en A2. Ek het ontdek dat Arduino -penne nie net stroom kan verskaf nie, maar ook stroom kan sink, en daarom gebruik ek A3 as grond vir die regte knoppie. Om die spasie op die broodbord te maksimeer, het ek die helfte van die Nano aan die bord gehang en die penne aan die linkerkant met 'n stuk skuim ondersteun.

2. Bedraad dit:

Met 'n paar draadstroppers en 'n ordentlike hoeveelheid 22 AWG soliede kerndraad, maak u komponente netjies saam. Die gebruik van soliede kern vir die maak van semi-permanente broodbordprojekte is die sleutel, omdat u dit in lengte kan snoei, in teenstelling met springdrade. Maak seker dat u nie te veel lengte op u drade laat nie, dit sorg vir 'n deurmekaar bord. Sny die leidings van die aftrekweerstands af sodat hulle pas by die bord.

(U kan ook net volg wat ek hierbo gedoen het.)

Stap 2: Programmeer en toets

Program en toets
Program en toets

Om later 'n hoofpyn te bespaar, moet u seker maak dat die OLED en die knoppies werk soos dit moet deur basiese toetsprogramme te maak.

1. Beplan, beplan, beplan:

Om net regs in die kode te spring, is nie 'n verstandige praktyk nie. Vertrou my, ek het probeer! Daarom moet u 'n uiteensetting gee van hoe u program gaan werk. 'N Programvloeidiagram is 'n redelike goeie manier om te beplan wat u kode moet doen en sal u beslis op koers hou. Neem myne byvoorbeeld (hierbo)

2. Kode, kode, kode:

Eerlik gesê, hierdie projek is 'n groter programmeringsoefening as 'n hardeware -oefening. Die enigste biblioteek wat ek gebruik het, was die OLED -biblioteek van Adafruit, sonder die ondersteunende GFX- en Wire -biblioteke.

Laat u die OLED -biblioteek van Adafruit installeer via die biblioteekbestuurder van die Arduino IDE.

Ek kan nie elke reël kode wat ek geskryf het, dokumenteer nie, maar hier is 'n paar wenke:

Wenke:

Kommentaar:

- Skryf in die eerste plek netjiese en nuttige opmerkings terwyl u kodeer. U en ander wat u kode lees, sal u beslis bedank.

Geheue:

- Met meer ingewikkelde projekte soos hierdie, word SRAM nogal 'n warm produk. In die Adafruit -biblioteek neem die 128 x 64 OLED -buffer 1 kB alleen op, wat ongeveer die helfte van die geheue in 'n ATMega328p is. Daarom is slim geheue bestuur belangriker as ooit.

- Met groot datastrukture sal die data wat opgehou word, versamel en baie ruimte inneem. Om die geheue -voetspoor van my veranderlikes te verminder, het ek kleiner datatipes (soos kort en byte) gebruik.

- Snare word gewoonlik in SRAM gestoor, maar deur die F () -funksie te gebruik, plaas hulle dit eerder in PROGMEM, waardeur u kosbare geheue bespaar.

Millis:

- Gebruik die millis () -funksie om 'n meer akkurate tydsberekening van die spelsiklusse te bereik. Daar is baie goeie tutoriale en voorbeelde aanlyn.

Vooraf gedefinieer:

- Gebruik die #define preprocessor richtlijn as 'n maklike manier om permanente waardes in kode in te stel.

Toets:

- Toets u kode terwyl u gaan. Dit sal baie makliker wees om foute uit te skakel.

Stap 3: Geniet dit

Om pret te hê met u nuwe slangspel!

(Ek weet dat ek met 20 punte in die video hierbo gewen het; u kan die wenvoorwaarde in my kode hoër stel.)

Dinge om op uit te brei:

  • 'N Battery vir draagbaarheid
  • Veiliger knoppies
  • 'N Nog kleiner slangetjie
  • Nog meer speletjies?

Aanbeveel: