Talaan ng mga Nilalaman:

$ 3 Alternatibong kay Makey Makey: 4 na Hakbang (na may Mga Larawan)
$ 3 Alternatibong kay Makey Makey: 4 na Hakbang (na may Mga Larawan)

Video: $ 3 Alternatibong kay Makey Makey: 4 na Hakbang (na may Mga Larawan)

Video: $ 3 Alternatibong kay Makey Makey: 4 na Hakbang (na may Mga Larawan)
Video: 🔴 RDD webinar: how to raise awareness among healthcare providers? 2024, Nobyembre
Anonim
$ 3 Alternatibong kay Makey Makey
$ 3 Alternatibong kay Makey Makey
$ 3 Alternatibong kay Makey Makey
$ 3 Alternatibong kay Makey Makey

Ang Makey Makey ay isang mahusay na maliit na aparato na gumaya sa isang USB keyboard at hinahayaan kang gumawa ng mga susi mula sa anumang medyo kondaktibong bagay (aluminyo palara, saging, maglaro ng kuwarta, atbp.), Na maaaring magamit bilang isang tagapamahala para sa mga laro at pang-edukasyon na proyekto. Ang Makey Makey ay may dalawang mga kabiguan: (1) gastos at (2) ang pangangailangan para sa isang koneksyon sa lupa.

Ang proyektong ito ay isang murang kahalili gamit ang isang $ 2 STM32F1 board at capacitive sensing. Mayroon lamang itong 10 input na taliwas sa Makey Makey's 12, ngunit may kalamangan na bilang karagdagan sa paggaya ng isang keyboard, maaari nitong gayahin ang isang USB gamepad controller (digital joystick).

Mga Bahagi:

  • board na "black pill" STM32F103c8 ($ 1.90 sa Aliexpress; karagdagang impormasyon dito)
  • breadboard (mas mababa sa $ 1 sa Aliexpress) at mga jumper wires; o isang pangkat lamang na mga konektor ng mga babaeng dupont na konektor ($ 0.70 sa Aliexpress para sa isang pak na 40)
  • paperclips, mga clip ng buaya, atbp.

Mga tool:

  • computer
  • UART-to-USB adapter para sa paunang board program (isang Arduino Uno o Mega ang gagawa ng trabaho, tulad ng isang murang yunit ng CH340)
  • panghinang na bakal para sa mga soldering header upang makasakay (maaari mo ring gamitin ang isang bungkos ng mga test clip nang walang paghihinang, ngunit kung minsan ay nalalaglag sila)

Ang software ay isang halimbawa ng sketch na kasama sa aking aklatan ng ADCTouchSensor na nagbibigay-daan para sa capacitive sensing na may isang solong pin sa board ng STM32F1 bawat sensor (batay ito sa silid-aklatan ng martin2250 para sa AVR).

Babala: Sa tuyong panahon, o kung saan may isyu ang static (hal., Sa isang karpet), huwag hawakan ang mga nakalantad na konektor ng metal baka ikaw ay maging sanhi ng pagkasira ng electrostatic sa board ng STM32F1. Inaasahan kong ang paglaban ng mga patatas, saging, maglaro ng kuwarta, atbp. Ay makakatulong na protektahan ang board, ngunit kung gagamit ka ng hubad na aluminyo palara, maaari kang magkaroon ng mga problema. Sa kabilang banda, ang board ay $ 1.90 lamang.

Mga ideya sa aktibidad na pang-edukasyon:

  • Eksperimento upang malaman kung anong mga item ang nakagawi at maaaring magamit bilang mga kontrol sa ibabaw. (Hal. Lead ng lapis kumpara sa krayola; maglaro ng kuwarta kumpara sa kandila.)
  • Sumulat ng mga larong Scratch na gumagamit ng isang home-made controller.
  • Baguhin ang Arduino code na nagpapatakbo sa proyekto upang payagan ang pag-click / paggalaw ng mouse, iba pang mga susi, higit sa apat na mga direksyon ng joystick, atbp.

Hakbang 1: I-install ang Bootloader sa Development Board

I-install ang Bootloader sa Development Board
I-install ang Bootloader sa Development Board
I-install ang Bootloader sa Development Board
I-install ang Bootloader sa Development Board
I-install ang Bootloader sa Development Board
I-install ang Bootloader sa Development Board

Paghinang ng dalawang mga three-pin header sa gitna ng Black Pill development system (B0- / center / B0 +; B1- / center / B1 +), at ang mahabang mga header sa tabi ng mga gilid (kung nagmamadali ka, o nais upang maiwasan ang mga hindi kinakailangang mga pin na maaaring malito ang mga bata, kailangan mo lamang ng mga pin para sa A0-A10 at G).

Kailangan mo ng isang UART sa USB na tulay na katugma sa mga 3.3v na aparato. Maaari kang mag-order ng ch340 mula sa Aliexpress sa halagang $ 0.66, ngunit mayroon akong isang Arduino Mega knockoff na nakaupo sa paligid, at mayroong isang cool na trick na nahanap ko sa online. Kung sa isang Arduino pinapaikli mo ang reset pin sa lupa na may isang maikling kawad, pagkatapos ito ay nagiging isang UART sa USB bridge - hindi kailangan ng sketch. Ang trick lang ay ang pag-label ng RX at TX ay nababaligtad: ang "RX" pin ng Arduino ay nagpapadala at natanggap ang pin na "TX". Ang Arduino ay tumatakbo sa 5v at ang Black Pill sa 3.3v, ngunit ang PA9 at PA10 na mga pin sa stm32f103 ay 5V mapagparaya ayon, kaya't hindi dapat maging isang problema.

Sa mga header na iyong hinihinang, maglagay ng isang jumper mula sa B0 + hanggang sa gitna at mula sa B1 hanggang sa gitna.

Gawin ang mga sumusunod na koneksyon:

  • Ang PA9 hanggang UART tulay RX ("TX" kung gumagamit ka ng Arduino trick)
  • PA10 hanggang UART bridge TX ("RX" kung gumagamit ka ng trick ng Arduino)
  • G sa UART tulay lupa

Maaari kang gumamit ng isang breadboard, o male-to-female jumpers, o kung nais mong gawin ito bago mo solder ang mga header, maaari mong gamitin ang mga test clip (tulad ng larawan).

I-download ang binary ng bootloader. Gusto mo ng generic_boot20_pb12.bin.

Sa Windows, i-install ang Flash Loader Demonstrator ng ST. Sa Linux (at marahil ang OS X at kahit Windows kung mas gusto mo ang mga tool ng commandline), gamitin sa halip ang script na ito ng python, ngunit ang aking mga tagubilin ay para sa Windows. Ikonekta ang iyong UART tulay sa iyong computer.

Palakasin ang Black Pill sa pamamagitan ng USB port (kung gumagamit ka ng computer, malamang na magreklamo ito tungkol sa isang hindi kilalang USB device; huwag pansinin iyon). Simulan ang Flash Loader Demonstrator. Piliin ang port ng COM para sa iyong tulay sa UART. Piliin ang "Alisin ang proteksyon" kung magagamit. Pumili ng isang 64kb kaysa sa 128kb bersyon ng flash. At i-upload ang binary na bootloader.

I-unpower ang lahat at pagkatapos ay ilipat ang jumper mula sa B0 + / center sa B0- / center. Mayroon ka na ngayong isang bootloader na maaari mong gamitin sa Arduino IDE.

Hakbang 2: I-set up ang Arduino IDE

I-set up ang Arduino IDE
I-set up ang Arduino IDE

Ipagpalagay ko na mayroon kang pinakabagong Arduino IDE na naka-install.

Sa Mga Tool | Mga Lupon | Boards Manager, i-install ang suporta para sa Arduino Zero (ilagay lamang ang Zero sa paghahanap, mag-click sa nahanap na entry, at pagkatapos ay I-install). Oo, hindi ka nagtatrabaho sa isang Zero, ngunit mai-install nito ang tamang tagatala ng gcc.

Susunod, i-download ang stm32duino core. Sa Windows, inirerekumenda ko ang pag-download ng zip file, dahil nang suriin ko ang mga file (tinatanggap, na may svn), mayroon akong mga problema sa mga pahintulot sa mga file sa direktoryo ng mga tool sa Windows na kailangan ng pag-aayos. Ilagay ang sangay sa Arduino / Hardware / Arduino_STM32 (kaya magkakaroon ka ng mga folder tulad ng Arduino / Hardware / Arduino_STM32 / STM32F1, atbp.) Sa Windows, i-install ang mga driver sa pamamagitan ng pagpapatakbo ng mga driver / win / install_drivers.bat.

Hakbang 3: I-install ang CapacitiveController Sketch

I-install ang CapacitiveController Sketch
I-install ang CapacitiveController Sketch
I-install ang CapacitiveController Sketch
I-install ang CapacitiveController Sketch
I-install ang CapacitiveController Sketch
I-install ang CapacitiveController Sketch

Sa Arduino IDE, piliin ang Sketch | Isama ang Library | Pamahalaan ang Mga Aklatan. Maghanap para sa "ADCTouchSensor" at i-install ang bersyon 0.0.6 o mas bago. Ulitin at hanapin ang "USBHID" at i-install ang aking USBHID_stm32f1 library.

Piliin ang File | Halimbawa | ADCTouchSensor | CapacitiveController.

Tiyaking mayroon kang mga sumusunod na setting sa ilalim ng Mga Tool:

  • Lupon: Generic STM32F103C8
  • Paraan ng pag-upload: STM32duino Bootloader

I-plug ang board sa computer at i-click ang kanang-arrow na "upload" na pindutan. Maaaring kailanganin mong i-reset ang board (pindutin ang pindutan ng pag-reset dito) sa sandaling lumitaw ang mensahe sa pag-upload sa console.

Hakbang 4: Mga Koneksyon at Pindutan

Mga Koneksyon at Pindutan
Mga Koneksyon at Pindutan
Mga Koneksyon at Pindutan
Mga Koneksyon at Pindutan
Mga Koneksyon at Pindutan
Mga Koneksyon at Pindutan

Sa pamamagitan ng pag-unplug ng aparato, patakbuhin ang mga wire mula sa mga STM32F1 na pin sa iyong mga kontrol sa ibabaw. Kumonekta sa mga clip ng buaya, paperclips, o sa pamamagitan lamang ng pagdikit ng mga jumper sa mga bagay. Maaari kang gumamit ng isang breadboard o babaeng-to-male jumper. Para sa Tetris sa computer, ginamit namin ang keyboard mode at ang mga arrow key; para sa Pac Man sa tablet, gumamit kami ng isang USB OTG cable at Joystick mode.

Ang CapacitiveController sketch ay nagkakalibrate ng mga capacitive sensor kapag ito ay naka-on. Siguraduhin na habang binubuksan mo ito, hindi mo hinawakan ang mga kontrol sa ibabaw, mga wire sa kanila o mga pin. At kung binago mo ang anumang kontrol sa ibabaw, kailangan mong i-calibrate muli sa pamamagitan ng pag-plug at pag-plug in muli o pagpindot sa puting pindutan ng pag-reset sa board.

Karamihan sa mga app dito ay gagana, pati na rin ang marami pa. Maaari mo ring makita kung gaano karaming mga proyekto sa Makey Makey ang maaari mong iakma.

Ang ilang mga mahusay na ibabaw ng kontrol:

  • Prutas at gulay
  • maglaro ng kuwarta
  • aluminyo foil (maliban sa mataas na static na kondisyon)
  • mabibigat na mga pindutan / koneksyon sa lapis (ang mga linya ng koneksyon ay hindi dapat masyadong mahaba - sa larawan, hindi gumana ang pinaka-ilalim na pindutan)
  • eksperimento sa marami pa! (maaari mo ring subukang i-tweak ang 25 in kung (mga sensor -> basahin ()> 25) ang linya sa source code para sa ilang mga ibabaw)

Mga koneksyon sa keyboard mode:

  • Iwanan ang pagkakakonekta sa A10
  • A0: kalawakan
  • A1: pataas
  • A2: kaliwa
  • A3: pababa
  • A4: tama
  • A5: w
  • A6: a
  • A7: s
  • B0: d
  • B1: f

Mga koneksyon sa Gamepad / Joystick mode:

  • Ikonekta ang A10 sa Ground (G) upang itakda ang mode ng joystick
  • A0: pindutan 1
  • A1: pataas
  • A2: kaliwa
  • A3: pababa
  • A4: tama
  • A5-A7, B0, B1: mga pindutan 2-6

Pahiwatig:

Kung gumagamit ka ng male-to-female jumper, maaari mong gawin ang Joystick mode A10-ground na koneksyon sa pamamagitan ng pag-jam sa mga dulo ng lalaki ng dalawang jumper sa bawat isa, sa gayon bumubuo ng isang babaeng jumper.

Inirerekumendang: