Taula de continguts:
- Pas 1: tenir les coses que necessiteu
- Pas 2: Obteniu i baixeu el codi
- Pas 3: Jugar
- Pas 4: experiments opcionals amb components externs
Vídeo: Prova Bare Arduino, amb programari de jocs que utilitza entrada capacitiva i LED: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
Joc interactiu "Push-It" que utilitza una placa Arduino nua, no necessita parts externes ni cablejat (utilitza una entrada tàctil capacitiva). Es mostra a sobre, demostra que funciona en dos taulers diferents.
Push-It té dos propòsits.
- Per demostrar / verificar ràpidament que la vostra placa Arduino funciona i que esteu configurat correctament per descarregar-li un nou esbós de codi. Podreu veure que realitza l'entrada i la sortida (nivell d'entrada digital sensible, sortida al LED de la placa); emmagatzemar i recuperar un valor de la memòria EEPROM no volàtil. Tot sense connectar cap cable o dispositiu.
- Proporciona un joc divertit i desafiant que interactua amb una placa Arduino.
Aquesta instrucció suposa que ja heu instal·lat un IDE Arduino i que almenys coneixeu mínimament el seu ús. Si no, us remeto a aquests enllaços:
Introducció a Arduino
Addició de suport Digispark (amb el carregador d’arrencada) a l’IDE Arduino 1.6.x existent
Push-It funcionarà amb la majoria de qualsevol placa Arduino, per exemple un tauler Nano, Uno o DigiSpark Attiny85. L’he provat amb un Nano 3.1 i un DigiSpark. Al text, quan faig referència als noms / números dels pins, s’utilitzaran a la placa Nano (a diferència del DigiSpark).
Pas 1: tenir les coses que necessiteu
Que és simplement qualsevol Arduino o placa comparable.
Si encara no en teniu, us recomano començar amb un DigiSpark Pro (~ 12 dòlars) o un Nano 3.0 d'Ebay per uns 3 dòlars (però tindreu una setmana o dues més per esperar que vingui de la Xina; i haureu d’instal·lar un controlador USB CH340). El DigiSpark ~ 10 dòlars (no Pro) és molt adequat per a aquest joc de vídeo de "bit" (aquesta unitat despullada, amb només 6 E / S, és una mica més complicada de pujar-hi)
Enllaços al maquinari utilitzat aquí:
Nano V3.0 Atmega328P a eBay
Taula de desenvolupament USB Digispark
Pas 2: Obteniu i baixeu el codi
Copieu el codi següent a un fitxer d'esbós arduino (per exemple, … / Push_It / Push_It.ino) He intentat comentar-ho força bé. Espero que el codi sigui fàcilment comprensible. La lògica per determinar quan augmentar, disminuir i quan no és una mica complicada, però aquesta porció també és un codi especialitzat i no és d’utilitat general. l'IDE Arduino veure:
Creació d’un nou esbós Arduino
Baixeu-vos l'esbós "Push_It" al nostre microcontrolador segons les instruccions Arduino IDE de la vostra placa.
Pas 3: Jugar
L'objectiu del joc és aconseguir que el LED (integrat) parpellegi el màxim de temps possible en un conjunt de flaixos que després es repeteixen
Jugant al joc:
Push-It comença amb un sol flaix, que després es repetirà. Si toqueu el dit a prop del pin d'entrada mentre el LED està encès, el següent cicle parpellejarà el LED dues vegades.
Cada vegada que premeu el pseudo botó durant el primer flaix d'un conjunt de flaixos, s'afegirà un altre flaix a aquest conjunt. En general, no importa quan aixequi / tregui el dit.
Però si "premeu" abans o després del primer flaix, es reduirà el nombre de flaixos d'un conjunt.
Si no feu res més, es mantindrà el nombre de flaixos. A més, quan el recompte no canvia durant un cicle complet, el número de recompte s'emmagatzema a la memòria EEPROM.
Cada vegada que aconsegueixes augmentar el recompte de flaix, la sincronització s’accelera una mica, cosa que fa que sigui cada vegada més difícil arribar a un recompte de flaixos elevat. Quan feu un lliscament i el nombre de flaixos es redueixi, hi haurà una pausa més llarga abans del flaix inicial del següent cicle. Això suposa un repte addicional, ja que pot augmentar la probabilitat de saltar l’arma. Així que estigueu alerta.
Un cop hàgiu aconseguit la unitat fins a un recompte de flaix elevat, podeu portar-la (o enviar-la per correu electrònic, cosa que serveix per a DigiSpark) a un amic, on en connectar-la veuran la quantitat de flaix que heu obtingut. a. M’ha semblat difícil desafiar-lo fins a més de 8. Amb un botó real connectat he aconseguit que arribi a més d’una dotzena. Per tornar a un recompte inferior, podeu prémer repetidament en qualsevol moment abans o després del primer flaix. A més, si col·loqueu el pin d'entrada a terra durant un encès, el recompte es restablirà a 1.
Tingueu en compte que el tauler original de DigiSpark té un retard de 10 segons després de l’encesa abans del qual començarà a realitzar el codi “Push-It” i jugarà el joc. Utilitza aquest temps per intentar parlar a través dels pins USB per rebre una possible nova actualització de codi de descàrrega.
Si la placa Arduino que utilitzeu té un LED USB TX, aquest LED tindrà un petit flaix ràpid quan hagueu efectivament "premut el botó". Hi haurà un parpelleig més significatiu d’aquest LED sempre que s’actualitzi el valor de recompte a l’EEPROM amb un valor nou. Aquest comentari us pot ajudar molt a saber quan o assegurar-vos que heu activat efectivament un esdeveniment de "botó premut". És possible que hàgiu d'assegurar-vos que no toqueu la terra del circuit (com el metall al voltant d'un connector micro-USB) de manera que la vostra figura indueixi soroll al pin d'entrada obert. Hi haurà reptes afegits i una mica imprevisibles a causa del fet que el pin d'entrada està flotant (no és tirat cap amunt ni cap avall per una càrrega conductiva / resistiva) i el soroll variable del senyal que arriba pel dit.
Una ona quadrada de 250 Hz es transmet a un pin al costat del pin d’entrada, cosa que millora molt la seguretat d’un senyal d’entrada injectat quan el dit cobreix els dos pins.
He trobat que les respostes del tauler DigiSpark són bastant previsibles de manera consistent amb una petita pressió dels dits cap a la cantonada del tauler on es troben els D3-D5.
Quan toco "Push-It", m'agrada fer-ho amb la placa connectada a una bateria mòbil USB 5v (veure fotos). Generalment, es poden trobar de forma econòmica en contenidors al costat dels adaptadors automàtics USB AC i 12V; a la majoria de grans magatzems, tots els departaments d'electrònica.
Pas 4: experiments opcionals amb components externs
Tingueu en compte que: si afegiu un botó real, hi ha una línia de codi que cal comentar, tal com s’indica al codi.
Amb un altaveu, d'un costat a terra, si toqueu l'altre cable a D4, sentireu el so d'una ona quadrada de 250 Hz. A D3 hi ha una ona quadrada de 500Hz. Si connecteu l’altaveu entre D3 i D4, sentireu un compost dels dos senyals.
Connectar un LED en lloc d’un altaveu com és anterior és molt interessant. No cal preocupar-se per la tensió, els nivells de corrent, les resistències o, fins i tot, la polaritat (el pitjor dels casos és que no s’encén, donat-li la volta). Proveu, primer de tot, que el cable negatiu (càtode) estigui connectat a terra i l’altre a D3 o D4. El LED estarà "mig" encès a causa de les ones quadrades. A més, no es necessita resister, ja que la sortida de les unitats MicroController està limitada actualment. Vaig fer mesures actuals resultant en 15ma i 20ma per a les MCU Attiny85 i Atmega328 respectivament. Aquests nivells són aproximadament la meitat del valor limitat actual d’aquestes parts a causa de la naturalesa del 50% del cicle de treball dels senyals d’ona quadrada de conducció. Les lectures del mesurador són en realitat una mitjana del corrent a través del circuit provat.
Curiosament, si feu un pont entre D3 i D4 amb el LED (vegeu la imatge superior i esquerra), s’encendrà de qualsevol manera i aproximadament ½ la brillantor com ho feia amb un costat connectat a terra. Us convido a reflexionar sobre per què.
Recomanat:
4 jocs de botons amb una entrada analògica: 6 passos (amb imatges)
4 jocs de botons que fan servir una entrada analògica: aquest instructiu se centra a utilitzar una línia d’entrada analògica per a diversos botons que es poden detectar independentment els uns dels altres. Tots els jocs (8 en t
Com descarregar programari lliure com a estudiant ISU (Microsoft, Adobe i programari de seguretat: 24 passos)
Com descarregar programari lliure com a estudiant ISU (Microsoft, Adobe i programari de seguretat: per a Adobe: aneu al pas 1. Per a Microsoft: aneu al pas 8. Per a seguretat: aneu al pas 12. Per a Azure: aneu al pas 16
Controlador de jocs DIY basat en Arduino - Controlador de jocs Arduino PS2 - Jugar a Tekken amb el bricolatge Arduino Gamepad: 7 passos
Controlador de jocs DIY basat en Arduino | Controlador de jocs Arduino PS2 | Jugar a Tekken amb el bricolatge Arduino Gamepad: Hola nois, jugar sempre és divertit, però jugar amb el vostre propi controlador de jocs de bricolatge és més divertit
Comandament a distància sense fils que utilitza el mòdul NRF24L01 de 2,4 Ghz amb Arduino - Nrf24l01 Receptor transmissor de 4 canals / 6 canals per quadcòpter - Helicòpter Rc - Avió Rc amb Arduino: 5 passos (amb imatges)
Comandament sense fils que utilitza un mòdul NRF24L01 de 2,4 Ghz amb Arduino | Nrf24l01 Receptor transmissor de 4 canals / 6 canals per quadcòpter | Helicòpter Rc | Avió Rc amb Arduino: per fer funcionar un cotxe Rc | Quadcopter | Drone | Avió RC | Vaixell RC, sempre necessitem un receptor i un transmissor, suposem que per RC QUADCOPTER necessitem un transmissor i un receptor de 6 canals i aquest tipus de TX i RX és massa costós, així que en farem un al nostre
Entrada tàctil capacitiva ESP32 mitjançant "Endolls de forat metàl·lic" per a botons: 5 passos (amb imatges)
Entrada tàctil capacitiva ESP32 que utilitza "Endolls metàl·lics de forat" per als botons: ja que estava ultimant les decisions de disseny per a un proper projecte basat en ESP32 WiFi Kit 32 que requereix una entrada de tres botons, un problema notable va ser que el WiFi Kit 32 no posseeix un sol botó mecànic, només tres botons mecànics, f