Innholdsfortegnelse:

$ 3 Alternativ til Makey Makey: 4 trinn (med bilder)
$ 3 Alternativ til Makey Makey: 4 trinn (med bilder)

Video: $ 3 Alternativ til Makey Makey: 4 trinn (med bilder)

Video: $ 3 Alternativ til Makey Makey: 4 trinn (med bilder)
Video: Сиреноголовый Фильм 2024, Juli
Anonim
$ 3 Alternativ til Makey Makey
$ 3 Alternativ til Makey Makey
$ 3 Alternativ til Makey Makey
$ 3 Alternativ til Makey Makey

Makey Makey er en flott liten enhet som emulerer et USB -tastatur og lar deg lage nøkler av noen noe ledende ting (aluminiumsfolie, bananer, lekdeig, etc.), som deretter kan brukes som kontroller for spill og pedagogiske prosjekter. Makey Makey har to ulemper: (1) kostnad og (2) behovet for en jordforbindelse.

Dette prosjektet er et billig alternativ ved bruk av et $ 2 STM32F1 -kort og kapasitiv sensing. Den har bare 10 innganger i motsetning til Makey Makeys 12, men den har fordelen at den i tillegg til å etterligne et tastatur, kan etterligne en USB -gamepadkontroller (digital joystick).

Deler:

  • "svart pille" STM32F103c8 bord ($ 1,90 på Aliexpress; mer informasjon her)
  • brødbrett (mindre enn $ 1 på Aliexpress) og hoppetråder; eller bare en haug kvinne-til-mann-dupont-kontakter ($ 0,70 på Aliexpress for en pakke med 40)
  • binders, krokodilleklipp, etc.

Verktøy:

  • datamaskin
  • UART-til-USB-adapter for første brettprogrammering (en Arduino Uno eller Mega vil gjøre jobben, det samme vil en billig CH340-enhet)
  • loddejern for lodding av hoder til bord (du kan også bruke en haug med testklipp uten lodding, men de faller noen ganger ut)

Programvaren er et eksempel på en skisse som følger med ADCTouchSensor -biblioteket mitt, som muliggjør kapasitiv sensing med en enkelt pinne på STM32F1 -kortet per sensor (den er basert på martin2250s bibliotek for AVR).

Advarsel: I tørt vær, eller der statisk er et problem (f.eks. På et teppe), ikke rør ved de eksponerte metallkontaktene, for ikke å forårsake elektrostatisk skade på STM32F1 -kortet. Jeg forventer at motstanden til poteter, bananer, lekdeig, etc. vil bidra til å beskytte brettet, men hvis du bruker bar aluminiumsfolie, kan du få problemer. På den annen side er brettet bare $ 1,90.

Utdanningsaktivitetsideer:

  • Eksperimenter for å finne ut hvilke elementer som er ledende og kan brukes som kontrollflater. (F.eks. Blyantbly kontra fargestift; lek deig kontra stearinlys.)
  • Skriv Scratch-spill som bruker en hjemmelaget kontroller.
  • Endre Arduino -koden som driver prosjektet for å tillate museklikk/bevegelse, andre taster, mer enn fire joystickretninger, etc.

Trinn 1: Installer Bootloader på Development Board

Installer Bootloader på Development Board
Installer Bootloader på Development Board
Installer Bootloader på Development Board
Installer Bootloader på Development Board
Installer Bootloader på Development Board
Installer Bootloader på Development Board

Lodd de to tre-pins hodene midt i Black Pill-utviklingssystemet (B0-/center/B0+; B1-/center/B1+), og de lange toppene langs kantene (hvis du har det travelt eller ønsker for å unngå unødvendige pins som kan forvirre barn, trenger du bare pins for A0-A10 og G).

Du trenger en UART til USB -bro som er kompatibel med 3.3v -enheter. Du kan bestille en ch340 fra Aliexpress for $ 0,66, men jeg hadde en Arduino Mega knockoff sittende, og det var et kult triks jeg fant på nettet. Hvis du på en Arduino kortslutter tilbakestillingsnålen til bakken med en kort ledning, blir det en UART til USB-bro-ingen skisse er nødvendig. Det eneste trikset er at RX- og TX -merkingen blir omvendt: Arduinos "RX" -nål sender og "TX" -nålen mottar. Arduino kjører på 5v og Black Pill på 3.3v, men PA9- og PA10 -pinnene på stm32f103 er 5V -tolerante ifølge, så det burde ikke være noe problem.

På toppene du loddet, setter du en jumper fra B0+ til midten og fra B1- til midten.

Gjør følgende tilkoblinger:

  • PA9 til UART bridge RX ("TX" hvis du bruker Arduino -trikset)
  • PA10 til UART bridge TX ("RX" hvis du bruker Arduino -trikset)
  • G til UART bro bakken

Du kan bruke et brødbrett eller en mann-til-kvinne-hoppere, eller hvis du vil gjøre det før du lodder toppene, kan du bruke testklipp (som på bildet).

Last ned bootloader binær. Du vil ha generic_boot20_pb12.bin.

Installer STs Flash Loader Demonstrator på Windows. På Linux (og kanskje OS X og til og med Windows hvis du foretrekker kommandolinjeverktøy), bruk dette python -skriptet i stedet, men instruksjonene mine er for Windows. Koble UART -broen til datamaskinen.

Slå på den svarte pillen via USB -porten (hvis du bruker datamaskinen, vil den sannsynligvis klage på en ukjent USB -enhet; ignorere det). Start demonstrasjonen av Flash Loader. Velg COM -porten for UART -broen. Velg "Fjern beskyttelse" hvis tilgjengelig. Velg en 64 kb snarere enn 128 kb blitsversjon. Og last opp bootloader binær.

Koble fra alt og flytt deretter hopperen fra B0+/senter til B0-/senter. Du har nå en bootloader som du kan bruke med Arduino IDE.

Trinn 2: Sett opp Arduino IDE

Sett opp Arduino IDE
Sett opp Arduino IDE

Jeg antar at du har den siste Arduino IDE installert.

I Verktøy | Tavler | Boards Manager, installer støtte for Arduino Zero (bare sett Zero i søket, klikk på oppføringen og deretter Installer). Ja, du jobber ikke med en null, men dette vil installere den riktige gcc -kompilatoren.

Last deretter ned stm32duino -kjernen. På Windows anbefaler jeg å laste ned zip -filen, siden da jeg sjekket ut filene (riktignok med svn), hadde jeg noen tillatelsesproblemer med filer i Windows -verktøykatalogen som måtte fikses. Sett grenen i Arduino/Hardware/Arduino_STM32 (så får du mapper som Arduino/Hardware/Arduino_STM32/STM32F1, etc.) På Windows kan du installere drivere ved å kjøre drivers / win / install_drivers.bat.

Trinn 3: Installer CapacitiveController Sketch

Installer CapacitiveController Sketch
Installer CapacitiveController Sketch
Installer CapacitiveController Sketch
Installer CapacitiveController Sketch
Installer CapacitiveController Sketch
Installer CapacitiveController Sketch

I Arduino IDE, velg Sketch | Inkluder bibliotek | Administrer biblioteker. Søk etter "ADCTouchSensor" og installer versjon 0.0.6 eller nyere. Gjenta og søk etter "USBHID" og installer USBHID_stm32f1 -biblioteket mitt.

Velg Fil | Eksempel | ADCTouchSensor | Kapasitiv kontroller.

Sørg for at du har følgende innstillinger under Verktøy:

  • Brett: Generisk STM32F103C8
  • Last opp metode: STM32duino Bootloader

Plugg kortet inn i datamaskinen og klikk på "last opp" -knappen til høyre. Du må kanskje tilbakestille kortet (trykk på tilbakestillingsknappen på det) når opplastingsmeldingen vises i konsollen.

Trinn 4: Tilkoblinger og knapper

Tilkoblinger og knapper
Tilkoblinger og knapper
Tilkoblinger og knapper
Tilkoblinger og knapper
Tilkoblinger og knapper
Tilkoblinger og knapper

Når enheten er koblet fra, kjører du ledninger fra STM32F1 -pinnene til kontrollflatene. Koble til med krokodilleklipp, binders, eller bare ved å stikke hoppere i objekter. Du kan bruke et brødbrett eller hun-til-mann-hoppere. For Tetris på datamaskinen brukte vi tastaturmodus og piltastene; for Pac Man på nettbrettet brukte vi en USB OTG -kabel og joystick -modus.

CapacitiveController -skissen kalibrerer de kapasitive sensorene når den slås på. Sørg for at du ikke berører kontrollflatene, ledningene til dem eller pinnene mens du slår den på. Og hvis du endrer en kontrollflate, må du kalibrere på nytt ved å koble fra og koble til igjen eller trykke på den hvite tilbakestillingsknappen på brettet.

De fleste appene her vil fungere, så vel som mange andre. Du kan også se hvor mange Makey Makey -prosjekter du kan tilpasse.

Noen gode kontrollflater:

  • frukt og grønnsaker
  • leire
  • aluminiumsfolie (unntatt under høye statiske forhold)
  • kraftig blyantsknapper/tilkoblinger på papir (tilkoblingslinjene skal ikke være for lange-på bildet fungerte den nederste knappen ikke)
  • eksperimentere med mange flere! (du kan også prøve å justere 25 in hvis (sensorer -> lese ()> 25) linjen i kildekoden for noen overflater)

Tastaturmodus -tilkoblinger:

  • La A10 være frakoblet
  • A0: plass
  • A1: opp
  • A2: venstre
  • A3: ned
  • A4: høyre
  • A5: w
  • A6: a
  • A7: s
  • B0: d
  • B1: f

Tilkoblinger for gamepad/joystick -modus:

  • Koble A10 til bakken (G) for å angi joystick -modus
  • A0: knapp 1
  • A1: opp
  • A2: venstre
  • A3: ned
  • A4: høyre
  • A5-A7, B0, B1: knapper 2-6

Hint:

Hvis du bruker mann-til-kvinne-hoppere, kan du gjøre joystick-modus A10-jordforbindelsen ved å stikke hannendene på to hoppere inn i hverandre og derved danne en hun-til-kvinne-jumper.

Anbefalt: