Sisukord:
- Samm: omage vajalikke asju
- Samm: laadige kood alla ja laadige see alla
- 3. samm: mängimine
- 4. samm: valikulised katsed väliste komponentidega
Video: Testige paljast Arduino mängutarkvaraga, kasutades mahtuvuslikku sisendit ja LED -d: 4 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:45
"Push-It" interaktiivne mäng, kasutades paljast Arduino plaati, väliseid osi ega juhtmeid pole vaja (kasutab mahtuvuslikku "puudutussisendit"). Ülaltoodud näitab, et see töötab kahel erineval tahvlil.
Push-sellel on kaks eesmärki.
- Kiireks demonstreerimiseks/kontrollimiseks, kas teie Arduino plaat töötab ja kas olete õigesti seadistatud uue koodivisandi allalaadimiseks. Näete, et see teostab sisendit ja väljundit (tajub digitaalse sisendi taset, väljundit pardal olevale LED -ile); salvestada ja taastada väärtus püsivast EEPROM-mälust. Seda kõike juhtmeid või seadmeid ühendamata.
- Pakkuge meelelahutuslikku ja väljakutsuvat mängu Arduino lauaga suheldes.
See õpetatav eeldab, et olete juba Arduino IDE installinud ja olete selle kasutamisega vähemalt minimaalselt tuttav. Kui ei, siis viitan teid nendele linkidele:
Arduinoga alustamine
Digisparki (alglaaduriga) toe lisamine olemasolevale Arduino 1.6.x IDE -le
Push-It töötab enamiku mis tahes Arduino tahvlitega, nt. Nano, Uno või DigiSpark Attiny85 plaat. Ma olen seda testinud Nano 3.1 ja DigiSparkiga. Tekstis, kui viitan tihvtide nimedele/numbritele, kasutatakse neid Nano -plaadil (erinevalt DigiSparkist).
Samm: omage vajalikke asju
Mis on lihtsalt mis tahes Arduino või sarnane plaat.
Kui teil seda veel pole, soovitan alustada DigiSpark Proga (~ 12 dollarit) või eBay Nano 3.0 -ga ~ 3 dollari eest (kuid teil on veel nädal või kaks oodata, kuni see saabub Hiinast); ja peate installima CH340 USB -draiveri). DigiSpark ~ 10 dollarit (mitte Pro) sobib selle ühe bitise videomängu jaoks väga hästi (seda eemaldatud seadet, millel on ainult 6 sisendit/väljundit, on veidi keerulisem üles laadida)
Lingid siin kasutatavale riistvarale:
Nano V3.0 Atmega328P eBays
Digispark USB arendusplaat
Samm: laadige kood alla ja laadige see alla
Kopeerige allolev kood arduino visandifaili (nt…/Push_It/Push_It.ino) Olen proovinud seda üsna hästi kommenteerida. Loodan, et leiate koodi kergesti arusaadavaks. Loogika, mille abil määrata, millal suurendada, vähendada ja millal mitte, on mõnevõrra keeruline, kuid see osa on samuti spetsiaalne kood ega ole üldkasulik. Lisateavet uue eskiisi (koodiprojekt) seadistamise kohta, mida kasutada koos Arduino IDE vaata:
Uue Arduino visandi loomine
Laadige eskiis „Push_It” meie mikrokontrollerisse vastavalt oma plaadi Arduino IDE juhistele.
3. samm: mängimine
Mängu eesmärk on panna LED (rongisiseselt) vilkuma võimalikult palju aega välkude komplektis, mis seejärel kordub
Mängu mängimine:
Push-It algab ühe välguga, mis seejärel kordub. Kui puudutate sõrme sisendnõela lähedal, kui LED põleb, vilgutab järgmine tsükkel LED -i kaks korda.
Iga kord, kui vajutate pseudonuppu välkude komplekti esimese välklambi ajal, lisatakse sellele komplekti veel üks välk. Sõrme tõstes/eemaldades ei ole üldiselt vahet.
Kuid kui vajutate enne või pärast esimest välku, väheneb komplekti välkude arv.
Kui te midagi muud ei tee, säilitatakse komplekti välkude arv. Lisaks, kui loendus ei muutu terve tsükli jooksul, salvestatakse loenduse number EEPROM -i mällu.
Iga kord, kui teil õnnestub välkude arvu suurendada, kiirendab ajastus pisut, muutes välkude arvu suurendamise üha raskemaks. Kui teete libisemise üles ja välkude arv väheneb, on enne järgmise tsükli algvälku pikem paus. See pakub täiendavat väljakutset, kuna see võib suurendada tõenäosust, et püstolist hüppate. Nii et olge valvel.
Kui olete oma seadme välklampide arvu saavutanud, võite selle oma sõbrale saata (või saata postiga, mille jaoks DigiSpark sobib) sõbrale, kus ta pärast ühendamist näeb, kui suure välgu arvuga olete oma üles tõstnud et. Ma leidsin, et selle lõpetamine kuni 8 -ni on keeruline. Kui nupp on kinnitatud, on mul õnnestunud see saada üle tosina. Madalama arvu taastamiseks võite seda korduvalt vajutada igal ajal enne või pärast esimest välku. Ka siis, kui lülitate sisselülitamisnupu maandamise ajal maapinnale, lähtestatakse loendus väärtusele 1.
Pange tähele, et originaal DigiSparki plaadil on pärast sisselülitamist 10-sekundiline viivitus, enne mida ta hakkab täitma "Push-It" koodi ja mängima. See kasutab seda aega USB -nööpnõelte kaudu rääkimiseks, et saada allalaadimiskoodi võimalik värskendus.
Kui teie kasutusel oleval Arduino plaadil on USB TX -LED, hakkab sellel LED -il kiire pisike välk, kui olete tõhusalt nuppu vajutanud. Kui EEPROM -i loendusväärtust värskendatakse uue väärtusega, hakkab see LED vilkuma rohkem. See tagasiside aitab teil palju teada saada, millal või kindlustate, et olete nupuvajutusega sündmuse tõhusalt käivitanud. Peate võib-olla tagama, et te ei puudutaks vooluahela maandust (näiteks metalli mikro-USB-pistiku ümber), nii et teie figuur tekitaks tõepoolest avatud sisendpoldile müra. Lisanduvad ja mõnevõrra ettearvamatud väljakutsed, mis tulenevad asjaolust, et sisendtihvt hõljub (juhtiv/takistuslik koormus ei tõmba seda üles ega alla) ja sõrmest tuleb muutuvat signaalimüra.
250 Hz ruutlaine väljastatakse sisendtihvti kõrval olevale tihvtile, mis parandab oluliselt süstitud sisendsignaali kindlust, kui teie sõrm katab mõlemad tihvtid.
Leidsin, et DigiSparki tahvli vastus on üsna järjekindlalt etteaimatav sõrmede väiksele pigistamisele plaadi nurgale, kus on D3-D5.
"Push-It" mängides meeldib mulle seda teha, kui tahvel on ühendatud USB 5v mobiilse akuga (vt fotosid). Neid võib üldjuhul odavalt leida prügikastidest USB vahelduvvoolu ja 12 V automaatadapterite kõrval; enamikus kaubamajade elektroonikaosakonnas.
4. samm: valikulised katsed väliste komponentidega
Pange tähele: kui lisate tõelise nupu, on üks koodirida, mida tuleb koodis märgitud viisil kommenteerida.
Kõlariga, üks külg maapinnale, kui puudutate teist juhet D4 -ni, kuulete 250 Hz ruutlaine heli. D3 juures on 500 Hz ruutlaine. Kui ühendate kõlari D3 ja D4 vahel, kuulete kahe signaali ühendit.
LED -i ühendamine kõlari asemel, nagu ülalpool, on väga huvitav. Pole vaja muretseda pinge, voolu taseme, takistite või isegi polaarsuse pärast (halvemal juhul ei sütti, siis lihtsalt keerake see ümber). Proovige kõigepealt negatiivse (katood) juhtmega, mis on ühendatud maaga, ja teisega kas D3 või D4. Ruudukujuliste lainete tõttu süttib LED pooleldi. Lisaks ei ole vaja takistada, kuna MicroControllerUnits väljund on voolupiiranguga. Tegin praegused mõõtmised, mille tulemuseks olid Attiny85 ja Atmega328 MCU -d vastavalt 15ma ja 20ma. Need tasemed on ligikaudu pool nende osade praegusest piiratud väärtusest, mis on tingitud kandva ruutlaine signaalide 50% töötsüklist. Arvesti näidud on tegelikult testitud vooluahela voolu keskmine.
Huvitav on see, et kui ühendate D3 ja D4 vahel LED -iga (vt pilti ülal ja vasakul), süttib see mõlemal juhul ja umbes poole heledusega, nagu ühe küljega maapinnaga ühendatud. Kutsun teid üles mõtlema, miks.
Soovitan:
Arduino kuvamisaeg TM1637 LED -ekraanil, kasutades RTC DS1307: 8 sammu
Arduino kuvamisaeg TM1637 LED -ekraanil, kasutades RTC DS1307: Selles õpetuses õpime, kuidas kuvada aega RTC DS1307 mooduli ning LED -ekraani TM1637 ja Visuino abil. Vaadake videot
Arduino loendur, kasutades TM1637 LED -ekraani: 7 sammu
Arduino loendur TM1637 LED -ekraani abil: selles õpetuses õpime, kuidas teha lihtsat numbriloendurit, kasutades LED -ekraani TM1637 ja Visuino. Vaadake videot
Arduino loendur, kasutades TM1637 LED -ekraani ja takistuste vältimise andurit: 7 sammu
Arduino loendur, kasutades TM1637 LED -ekraani ja takistuste vältimise andurit: Selles õpetuses õpime, kuidas teha lihtsat numbriloendurit, kasutades LED -ekraani TM1637 ning takistuste vältimise andurit ja Visuino. Vaadake videot
Arduino valgusfoori kontroller, kasutades RBG LED -i - 4-suunaline: 3 sammu
Arduino valgusfoori kontroller, kasutades RBG LED -i | 4-suunaline: selles postituses saate teada, kuidas Arduino valgusfoori kontrollerit valmistada. Seda valgusfoori regulaatorit kasutatakse liiklusvoo juhtimiseks. Neid saab rakendada tiheda liiklusega piirkondades, et vältida liiklusummikuid või õnnetusi
Arduino tekst kõneks muundur, kasutades LM386 - Rääkiva Arduino projekt - Talkie Arduino raamatukogu: 5 sammu
Arduino tekst kõneks muundur, kasutades LM386 | Rääkiva Arduino projekt | Talkie Arduino raamatukogu: Tere poisid, paljudes projektides nõuame, et arduino räägiks midagi, nagu rääkiv kell või mõningaid andmeid, nii et need juhised muudame teksti kõneks Arduino abil