Indholdsfortegnelse:

$ 3 Alternativ til Makey Makey: 4 trin (med billeder)
$ 3 Alternativ til Makey Makey: 4 trin (med billeder)

Video: $ 3 Alternativ til Makey Makey: 4 trin (med billeder)

Video: $ 3 Alternativ til Makey Makey: 4 trin (med billeder)
Video: Flirting with British Accents: Sex Education | Charm Battle | Netflix 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 fantastisk lille enhed, der efterligner et USB -tastatur og lader dig lave nøgler af noget lidt ledende ting (aluminiumsfolie, bananer, legedej osv.), Som derefter kan bruges som controller til spil og uddannelsesprojekter. Makey Makey har to ulemper: (1) pris og (2) behovet for en jordforbindelse.

Dette projekt er et billigt alternativ ved hjælp af et $ 2 STM32F1 -kort og kapacitiv registrering. Det har kun 10 indgange i modsætning til Makey Makeys 12, men det har den fordel, at det ud over at efterligne et tastatur kan efterligne en USB -gamepad -controller (digitalt joystick).

Dele:

  • "sort pille" STM32F103c8 bord ($ 1,90 på Aliexpress; flere oplysninger her)
  • brødbræt (mindre end $ 1 på Aliexpress) og jumperwires; eller bare en flok hun-til-han-dupont-stik ($ 0,70 på Aliexpress for en pakke med 40)
  • papirclips, krokodilleklip osv.

Værktøjer:

  • computer
  • UART-til-USB-adapter til indledende kortprogrammering (en Arduino Uno eller Mega klarer jobbet, ligesom en billig CH340-enhed)
  • loddejern til lodning af overskrifter til bord (du kan også bruge en masse testklip uden lodning, men de falder nogle gange ud)

Softwaren er en eksempelskitse, der følger med mit ADCTouchSensor -bibliotek, som muliggør kapacitiv registrering med en enkelt pin på STM32F1 -kortet pr. Sensor (den er baseret på martin2250s bibliotek til AVR).

Advarsel: I tørt vejr, eller hvor statisk er et problem (f.eks. På et gulvtæppe), må du ikke røre ved de udsatte metalstik, så du ikke forårsager elektrostatisk skade på STM32F1 -kortet. Jeg forventer, at kartofler, bananer, legedej osv. Modstår, vil hjælpe med at beskytte brættet, men hvis du bruger bar aluminiumsfolie, kan du have problemer. På den anden side er brættet kun $ 1,90.

Uddannelsesaktivitetsideer:

  • Eksperimenter for at finde ud af, hvilke emner der er ledende og kan bruges som kontroloverflader. (F.eks. Blyantbly kontra farveblyant; legedej vs. stearinlys.)
  • Skriv Scratch-spil, der bruger en hjemmelavet controller.
  • Rediger Arduino -koden, der driver projektet til at tillade museklik/bevægelse, andre taster, mere end fire joystickretninger osv.

Trin 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

Lod de to tre-benede hoveder midt i Black Pill-udviklingssystemet (B0-/center/B0+; B1-/center/B1+) og de lange headers langs kanterne (hvis du har travlt eller ønsker for at undgå unødvendige pins, der kan forvirre børn, skal du bare bruge pins til A0-A10 og G).

Du skal bruge en UART til USB -bro, der er kompatibel med 3.3v -enheder. Du kan bestille en ch340 fra Aliexpress for $ 0.66, men jeg havde en Arduino Mega knockoff siddende, og der var et fedt trick, jeg fandt online. Hvis du på en Arduino kortslutter nulstillingstappen til jorden med en kort ledning, så bliver det en UART til USB-bro-ingen skitse er nødvendig. Det eneste trick er, at RX- og TX -mærkningen bliver omvendt: Arduinoens "RX" pin sender og dens "TX" pin modtager. Arduino kører ved 5v og den sorte pille på 3,3v, men PA9 og PA10 benene på stm32f103 er 5V tolerante ifølge, så det burde ikke være et problem.

På overskrifterne, du lodde, skal du sætte en jumper fra B0+ til midten og fra B1- til midten.

Lav følgende forbindelser:

  • PA9 til UART bridge RX ("TX", hvis du bruger Arduino -tricket)
  • PA10 til UART bridge TX ("RX", hvis du bruger Arduino -tricket)
  • G til UART brogrund

Du kan bruge et brødbræt eller mand-til-hun-jumpere, eller hvis du vil gøre det, før du lodder overskrifterne, kan du bruge testklip (som på foto).

Download binær bootloader. Du vil have generic_boot20_pb12.bin.

I Windows skal du installere ST's Flash Loader Demonstrator. På Linux (og måske OS X og endda Windows, hvis du foretrækker kommandolinjeværktøjer), skal du bruge dette python -script i stedet, men mine instruktioner vil være til Windows. Tilslut din UART -bro til din computer.

Tænd for den sorte pille via dens USB -port (hvis du bruger computeren, vil den sandsynligvis klage over en ukendt USB -enhed; ignorere det). Start demonstrationen af Flash Loader. Vælg COM -porten til din UART -bro. Vælg "Fjern beskyttelse", hvis tilgængelig. Vælg en 64 kb frem for 128 kb flash version. Og upload binær bootloader.

Afbryd alt, og flyt derefter jumperen fra B0+/center til B0-/center. Du har nu en bootloader, som du kan bruge med Arduino IDE.

Trin 2: Konfigurer Arduino IDE

Opsæt Arduino IDE
Opsæt Arduino IDE

Jeg går ud fra, at du har den nyeste Arduino IDE installeret.

I værktøjer | Tavler | Boards Manager, installer support til Arduino Zero (bare sæt Zero i søgningen, klik på den fundne post og derefter Installer). Ja, du arbejder ikke med en nul, men dette installerer den rigtige gcc -kompilator.

Download derefter stm32duino -kernen. I Windows anbefaler jeg at downloade zip -filen, da jeg tjekkede filerne (ganske vist med svn), da jeg havde nogle tilladelsesproblemer med filer i Windows -værktøjskataloget, der skulle rettes. Sæt grenen i Arduino/Hardware/Arduino_STM32 (så du har mapper som Arduino/Hardware/Arduino_STM32/STM32F1 osv.) På Windows skal du installere drivere ved at køre drivers / win / install_drivers.bat.

Trin 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 skal du vælge Sketch | Inkluder bibliotek | Administrer biblioteker. Søg efter "ADCTouchSensor", og installer version 0.0.6 eller nyere. Gentag og søg efter "USBHID", og installer mit USBHID_stm32f1 bibliotek.

Vælg Fil | Eksempel | ADCTouchSensor | CapacitiveController.

Sørg for, at du har følgende indstillinger under Værktøjer:

  • Board: Generisk STM32F103C8
  • Uploadmetode: STM32duino Bootloader

Sæt tavlen i computeren, og klik på knappen "Upload" i højre pil. Du skal muligvis nulstille tavlen (tryk på nulstillingsknappen på den), når uploadmeddelelsen vises i konsollen.

Trin 4: Forbindelser og knapper

Forbindelser og knapper
Forbindelser og knapper
Forbindelser og knapper
Forbindelser og knapper
Forbindelser og knapper
Forbindelser og knapper

Når enheden er frakoblet, skal du føre ledninger fra STM32F1 -benene til dine kontrolflader. Opret forbindelse med alligatorklip, papirclips eller bare ved at stikke jumpere i objekter. Du kan bruge et brødbræt eller hun-til-han-jumpere. Til Tetris på computeren brugte vi tastaturtilstand og piletasterne; til Pac Man på tabletten brugte vi et USB OTG -kabel og joystick -tilstand.

CapacitiveController -skitsen kalibrerer de kapacitive sensorer, når den er tændt. Sørg for, at mens du tænder den, rører du ikke kontrolfladerne, ledninger til dem eller stifter. Og hvis du ændrer en kontrolflade, skal du kalibrere igen ved at tage stikket ud og tilslutte det igen eller trykke på den hvide reset-knap på tavlen.

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

Nogle gode betjeningsflader:

  • frugt og grønt
  • legedej
  • aluminiumsfolie (undtagen ved høje statiske forhold)
  • stærkt blyanterede knapper/forbindelser på papir (forbindelseslinjerne bør ikke være for lange-på billedet fungerede den nederste knap ikke)
  • eksperimentere med mange flere! (du kan også prøve at justere 25 in hvis (sensorer -> læse ()> 25) linjen i kildekoden for nogle overflader)

Tastaturtilslutninger:

  • Lad A10 være afbrudt
  • A0: plads
  • A1: op
  • A2: venstre
  • A3: ned
  • A4: højre
  • A5: w
  • A6: a
  • A7: s
  • B0: d
  • B1: f

Forbindelser til gamepad/joystick -tilstand:

  • Tilslut A10 til jord (G) for at indstille joystick -tilstand
  • A0: knap 1
  • A1: op
  • A2: venstre
  • A3: ned
  • A4: højre
  • A5-A7, B0, B1: knapper 2-6

Antydning:

Hvis du bruger han-til-hun-jumpere, kan du foretage joystick-tilstand A10-jordforbindelse ved at klemme hanenderne af to jumpere ind i hinanden og derved danne en hun-til-hun-jumper.

Anbefalede: