Съдържание:
- Стъпка 1: Инсталирайте Bootloader на борда за разработка
- Стъпка 2: Настройте Arduino IDE
- Стъпка 3: Инсталирайте CapacitiveController Sketch
- Стъпка 4: Връзки и бутони
Видео: $ 3 алтернатива на Makey Makey: 4 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:49
Makey Makey е страхотно малко устройство, което емулира USB клавиатура и ви позволява да правите ключове от всяко донякъде проводимо нещо (алуминиево фолио, банани, тесто за игра и т.н.), което след това може да се използва като контролер за игри и образователни проекти. Makey Makey има две недостатъци: (1) цена и (2) необходимостта от земна връзка.
Този проект е евтина алтернатива, използваща платка STM32F1 за 2 долара и капацитивно измерване. Той има само 10 входа за разлика от 12 на Makey Makey, но има предимството, че освен да емулира клавиатура, може да емулира USB контролер за геймпад (цифров джойстик).
Части:
- дъска "черно хапче" STM32F103c8 ($ 1.90 на Aliexpress; повече информация тук)
- макет (по -малко от $ 1 на Aliexpress) и джъмперни проводници; или просто куп женски към мъжки конектори dupont ($ 0.70 на Aliexpress за пакет от 40)
- кламери, алигаторни щипки и др.
Инструменти:
- компютър
- UART-към-USB адаптер за първоначално програмиране на платката (Arduino Uno или Mega ще свършат работа, както и евтино устройство CH340)
- поялник за запояване на хедери на борда (можете също да използвате куп тестови клипове без запояване, но понякога те изпадат)
Софтуерът е примерна скица, включена в моята библиотека ADCTouchSensor, която позволява капацитивно отчитане с един щифт на платката STM32F1 на сензор (базиран е на библиотеката на martin2250 за AVR).
Предупреждение: При сухо време или където статиката е проблем (например върху килим), не докосвайте откритите метални съединители, за да не причините електростатични повреди на платката STM32F1. Очаквам, че съпротивлението на картофи, банани, тесто за игра и т.н. ще помогне за защитата на дъската, но ако използвате голо алуминиево фолио, може да имате проблеми. От друга страна, таблото е само $ 1.90.
Идеи за образователна дейност:
- Експериментирайте, за да разберете кои елементи са проводими и могат да се използват като контролни повърхности. (Например, молив срещу молив; играйте тесто срещу свещ.)
- Напишете Scratch игри, които използват домашен контролер.
- Променете кода на Arduino, който захранва проекта, за да позволява щракване/движение на мишката, други клавиши, повече от четири посоки на джойстика и т.н.
Стъпка 1: Инсталирайте Bootloader на борда за разработка
Запояйте двата три-пинови заглавки в средата на системата за разработка на Black Pill (B0-/center/B0+; B1-/center/B1+) и дългите хедери по ръбовете (ако бързате или искате за да избегнете ненужни щифтове, които могат да объркат децата, просто се нуждаете от щифтове за A0-A10 и G).
Имате нужда от UART към USB мост, който е съвместим с 3.3v устройства. Можете да поръчате ch340 от Aliexpress за $ 0,66, но аз седях наоколо с Arduino Mega и имах страхотен трик, който намерих онлайн. Ако на Arduino скъсите нулиращия щифт към земята с къс проводник, той става UART към USB мост-не е необходима скица. Единственият трик е, че маркирането на RX и TX става обърнато: "RX" пина на Arduino предава и неговият "TX" пин получава. Arduino работи при 5v, а черното хапче при 3.3v, но щифтовете PA9 и PA10 на stm32f103 са 5V толерантни, така че това не би трябвало да е проблем.
Върху заглавките, които сте запояли, поставете джъмпер от B0+ до центъра и от B1- до центъра.
Направете следните връзки:
- PA9 към UART мост RX ("TX", ако използвате трика Arduino)
- PA10 към UART мост TX ("RX", ако използвате трика Arduino)
- G към моста UART
Можете да използвате макет или джъмпери от мъжки към женски, или ако искате да го направите, преди да запоите заглавките, можете да използвате тестови клипове (както е на снимката).
Изтеглете двоичния файл на зареждащия механизъм. Искате generic_boot20_pb12.bin.
В Windows инсталирайте демонстратора на Flash Loader на ST. В Linux (и може би OS X и дори Windows, ако предпочитате инструментите на командния ред), използвайте този скрипт на python вместо това, но моите инструкции ще бъдат за Windows. Свържете вашия UART мост към компютъра.
Включете Black Pill през USB порта (ако използвате компютъра, той вероятно ще се оплаче от неразпознато USB устройство; игнорирайте това). Стартирайте демонстратора на Flash Loader. Изберете COM порта за вашия UART мост. Изберете „Премахване на защитата“, ако има такава. Изберете 64kb, а не 128kb flash версия. И качете двоичния файл на зареждащия механизъм.
Изключете захранването на всичко и след това преместете джъмпера от B0+/център към B0-/център. Вече имате буутлоудър, който можете да използвате с Arduino IDE.
Стъпка 2: Настройте Arduino IDE
Предполагам, че имате инсталирана най -новата Arduino IDE.
В Инструменти | Табла | Boards Manager, инсталирайте поддръжка за Arduino Zero (просто поставете Zero в търсенето, щракнете върху намерения запис и след това инсталирайте). Да, не работите с Zero, но това ще инсталира правилния gcc компилатор.
След това изтеглете ядрото stm32duino. В Windows препоръчвам да изтеглите zip файла, тъй като когато проверявах файловете (да си призная, със svn), имах някои проблеми с разрешенията с файлове в директорията с инструменти на Windows, които се нуждаеха от поправяне. Поставете клона в Arduino/Hardware/Arduino_STM32 (така че ще имате папки като Arduino/Hardware/Arduino_STM32/STM32F1 и т.н.) В Windows инсталирайте драйвери, като стартирате drivers / win / install_drivers.bat.
Стъпка 3: Инсталирайте CapacitiveController Sketch
В Arduino IDE изберете Sketch | Включване на библиотека | Управление на библиотеки. Потърсете „ADCTouchSensor“и инсталирайте версия 0.0.6 или по -нова. Повторете и потърсете „USBHID“и инсталирайте моята библиотека USBHID_stm32f1.
Изберете Файл | Пример | ADCTouchSensor | CapacitiveController.
Уверете се, че имате следните настройки в Инструменти:
- Платка: Обща STM32F103C8
- Метод на качване: STM32duino Bootloader
Включете дъската в компютъра и щракнете върху бутона „качване“със стрелката надясно. Може да се наложи да нулирате дъската (натиснете бутона за нулиране върху нея), след като съобщението за качване се появи в конзолата.
Стъпка 4: Връзки и бутони
С изключено устройство, прокарайте проводници от щифтовете STM32F1 към контролните си повърхности. Свържете се с алигаторни щипки, кламери или просто като залепите джъмперите в предмети. Можете да използвате макет или джъмпери за жени. За Tetris на компютъра използвахме клавиатурен режим и клавишите със стрелки; за Pac Man на таблета използвахме USB OTG кабел и режим на джойстика.
Скицата CapacitiveController калибрира капацитивните сензори, когато е включена. Уверете се, че докато го включвате, не докосвате контролните повърхности, проводниците към тях или щифтовете. И ако промените някоя контролна повърхност, трябва да калибрирате отново, като изключите и включите отново или натиснете белия бутон за нулиране на дъската.
Повечето приложения тук ще работят, както и много други. Можете също така да видите колко проекти на Makey Makey можете да адаптирате.
Някои добри контролни повърхности:
- плодове и зеленчуци
- играйте тесто
- алуминиево фолио (освен при високи статични условия)
- бутони/връзки на хартия със силни моливи (връзките не трябва да са твърде дълги-на снимката най-долният бутон не работи)
- експериментирайте с много други! (можете също да опитате да настроите 25 в if (сензори -> read ()> 25) в изходния код за някои повърхности)
Връзки в режим на клавиатура:
- Оставете A10 изключен
- A0: пространство
- A1: нагоре
- A2: вляво
- A3: надолу
- A4: правилно
- A5: w
- А6: а
- A7: s
- B0: d
- В1: е
Връзки в режим на геймпад/джойстик:
- Свържете A10 към земята (G), за да зададете режим на джойстика
- A0: бутон 1
- A1: нагоре
- A2: вляво
- A3: надолу
- A4: правилно
- A5-A7, B0, B1: бутони 2-6
Съвет:
Ако използвате джъмпери от мъжки към женски, можете да осъществите джойстик режим A10-земна връзка, като задръжте мъжките краища на два джъмпера един в друг, като по този начин образувате джъмпер между жени.
Препоръчано:
Алтернатива на STM32F103C8T6 от GigaDevice: 5 стъпки
Алтернатива на STM32F103C8T6 от GigaDevice: Представяне на GD32F103C8T6 от GigaDevice като евтина и бърза алтернатива на STM32F103C8T6
Направи си сам инвертор на мрежата (не захранва мрежата) UPS алтернатива: 7 стъпки (със снимки)
DIY Grid Tied Inverter (не захранва мрежата) UPS алтернатива: Това е последваща публикация от другата ми инструкция за направата на инвертор за свързване на мрежата, който не се връща обратно в мрежата, тъй като сега винаги е възможно да се направи това в определени райони като проект „направи си сам“и някои места не позволяват захранване там
Raspberry Pi като Chromecast алтернатива (Raspicast): 10 стъпки (със снимки)
Raspberry Pi като Chromecast алтернатива (Raspicast): В тази инструкция ще ви покажа как да използвате raspberry pi 3 като алтернатива на Chromecast. Заслужава да се спомене, че това не е директен клонинг на Chromecast и че има ограничения. Този метод не поддържа бутона за предаване, но
Направи си сам евтина и точна алтернатива за гъвкава сензорна ръкавица: 8 стъпки (със снимки)
Направи си сам евтина и точна алтернатива за гъвкава сензорна ръкавица: Здравейте на всички, това е първата ми инструкция и в тази инструкция ще ви науча да правите евтина и точна ръкавица за гъвкав сензор. Използвах много алтернативи на гъвкавия сензор, но нито една от тях не работи за мен. И така, потърсих в Google и намерих нов
Евтина алтернатива за леки палатки за снимки: 3 стъпки
Евтина алтернатива за леки палатки за снимки: Здравейте, това е първата ми инструкция. Имах нужда от евтино решение, за да направя по -добри снимки на по -малки артикули. Затова направих тази лека палатка от материали около къщата. В крайна сметка ми струваше около 1,00 за няколко табла за плакати. Всичко останало се рециклира