Sadržaj:

Testirajte Bare Arduino, sa softverom za igre koji koristi kapacitivni ulaz i LED: 4 koraka
Testirajte Bare Arduino, sa softverom za igre koji koristi kapacitivni ulaz i LED: 4 koraka

Video: Testirajte Bare Arduino, sa softverom za igre koji koristi kapacitivni ulaz i LED: 4 koraka

Video: Testirajte Bare Arduino, sa softverom za igre koji koristi kapacitivni ulaz i LED: 4 koraka
Video: Leap Motion SDK 2024, Srpanj
Anonim
Testirajte Bare Arduino, sa softverom za igre pomoću kapacitivnog ulaza i LED diode
Testirajte Bare Arduino, sa softverom za igre pomoću kapacitivnog ulaza i LED diode
Testirajte Bare Arduino, sa softverom za igre pomoću kapacitivnog ulaza i LED diode
Testirajte Bare Arduino, sa softverom za igre pomoću kapacitivnog ulaza i LED diode

"Push-It" interaktivna igra koja koristi golu Arduino ploču, nisu potrebni vanjski dijelovi niti ožičenje (koristi kapacitivni ulaz na dodir). Gore prikazano, pokazuje da radi na dvije različite ploče.

Push-Ima dvije svrhe.

  1. Brzo pokazati/provjeriti radi li vaša Arduino ploča i jeste li pravilno postavljeni za preuzimanje nove skice koda. Moći ćete vidjeti da obavlja ulaz i izlaz (osjetite razinu digitalnog ulaza, izlaz na ugrađenu LED diodu); pohraniti i oporaviti vrijednost iz trajne EEPROM memorije. Sve bez pričvršćivanja žica ili uređaja.
  2. Omogućite zabavnu i izazovnu igru u interakciji s Arduino pločom.

Ovo uputstvo pretpostavlja da ste već instalirali Arduino IDE i da ste barem minimalno upoznati s njegovom uporabom. Ako ne, upućujem vas na ove veze:

Početak rada s Arduinom

Dodavanje Digisparka (s pokretačkim programom) podrške postojećem Arduino 1.6.x IDE -u

Push-It će raditi s većinom bilo koje Arduino ploče, npr. Nano, Uno ili DigiSpark Attiny85 ploču. Testirao sam je s Nano 3.1 i DigiSpark. U tekstu kada govorim o nazivima/brojevima pinova oni će se koristiti kao na Nano ploči (za razliku od DigiSparka).

Korak 1: Imajte stvari koje će vam trebati

Što je jednostavno bilo koja Arduino ili slična ploča.

Ako još nemate, preporučujem da započnete s DigiSpark Pro -om (~ 12 USD) ili Nano 3.0 s eBaya za ~ 3 USD (ali imat ćete dodatni tjedan ili dva da pričekate da stigne iz Kine; i morat ćete instalirati CH340 USB upravljački program). DigiSpark ~ 10 USD (nije Pro) vrlo je prikladan za ovu jednobitnu 'video' igru (Ova skinuta jedinica, sa samo 6 U/I, malo je kompliciranija za učitavanje)

Linkovi na hardver koji se ovdje koristi:

Nano V3.0 Atmega328P na eBayu

Digispark USB razvojna ploča

Korak 2: Dohvatite i preuzmite kôd

Dohvatite i preuzmite kôd
Dohvatite i preuzmite kôd

Kopirajte donji kod u arduino datoteku skice (npr.…/Push_It/Push_It.ino) Pokušao sam to prilično dobro komentirati. Nadam se da će vam kôd biti lako razumljiv. Logika za određivanje kada povećati, smanjiti, a kada ne, donekle je komplicirana, ali taj je dio također specijalizirani kod i nije općenito koristan. Za više pojedinosti o postavljanju nove 'skice' (projekt koda) koji će se koristiti s Arduino IDE vidi:

Stvaranje nove Arduino skice

Preuzmite skicu 'Push_It' u naš mikrokontroler prema Arduino IDE uputama za vašu ploču.

Korak 3: Igranje

Igranje
Igranje

Cilj igre je da LED dioda (na ploči) treperi što je više moguće u nizu bljeskova koji se zatim ponavljaju

Igranje igre:

Push-Start započinje jednim bljeskom, koji će se zatim ponoviti. Ako dodirnete prst blizu ulaznog pina dok je LED uključena, sljedeći ciklus LED će zasvijetliti dva puta.

Svaki put kada pritisnete pseudo tipku tijekom prvog bljeska u nizu bljeskova, tom će se skupu dodati još jedna bljeskalica. Općenito nije važno kada podignete/uklonite prst.

No ako 'pritisnete' prije ili nakon prvog bljeskalice, broj bljeskova u setu će se smanjiti.

Ako ne učinite ništa više, održava se broj bljeskova u setu. Nadalje, kada se brojanje ne mijenja tijekom cijelog ciklusa, broj se pohranjuje u memoriju EEPROM -a.

Svaki put kad uspijete povećati broj bljeskova, vrijeme se malo ubrzava, pa je sve teže i teže doći do velikog broja bljeskalica. Kada napravite klizanje prema gore i smanji se broj bljeskova, bit će duža pauza prije početnog bljeska sljedećeg ciklusa. To predstavlja dodatni izazov jer može povećati vjerojatnost da ćete skočiti iz pištolja. Zato budite oprezni.

Nakon što ste podigli jedinicu do velikog broja bljeskova, možete je odnijeti (ili poslati poštom, za što je DigiSpark dobar) prijatelju, gdje će nakon uključivanja vidjeti koliko ste povećali broj bljeskova do. Otkrio sam da je prestalo biti izazovno povećati ga na više od 8. S priloženim stvarnim gumbom uspio sam ga podići na više od desetak. Da biste se vratili na manji broj, možete ga više puta pritisnuti prije ili poslije prvog bljeskalice. Također ako preskočite ulazni pin na masu tijekom uključivanja, broj će se vratiti na 1.

Imajte na umu da originalna ploča DigiSpark ima kašnjenje od 10 sekundi nakon uključivanja, prije čega će početi izvoditi 'Push-It' kod i igrati igru. Ovo vrijeme koristi za pokušaj razgovora putem USB priključaka kako bi primio moguće ažuriranje koda za preuzimanje.

Ako Arduino ploča koju koristite ima USB TX LED diodu na sebi, ova LED dioda imat će brzu sićušnu bljeskalicu kada učinkovito 'pritisnete gumb'. Bit će značajnijeg treptanja ove LED diode kad god se vrijednost brojanja u EEPROM -u ažurira novom vrijednošću. Ove povratne informacije mogu vam uvelike pomoći u saznanju kada ste ili osigurati da ste učinkovito pokrenuli događaj 'pritisnutog gumba'. Možda ćete se morati pobrinuti da ne dodirujete masu strujnog kruga (poput metala oko mikro-USB konektora) tako da vaša figura doista izaziva šum na otvorenom ulaznom pinu. Bit će dodanih i pomalo nepredvidivih izazova zbog činjenice da ulazni pin pluta (ne povlači se prema gore ili prema dolje zbog vodljivog/otpornog opterećenja) i promjenjivog šuma signala koji dolazi kroz vaš prst.

Kvadratni val od 250Hz emitira se na pin pored ulaznog pina što uvelike poboljšava sigurnost ubrizganog ulaznog signala kada vaš prst pokrije oba pina.

Otkrio sam da je odaziv ploče DigiSpark prilično dosljedno predvidljiv na mali stisak prstiju do ugla ploče gdje se nalaze D3-D5.

Kad sviram 'Push-It', volim to raditi s pločom spojenom na USB 5v mobilnu bateriju (pogledajte fotografije). Oni se općenito mogu jeftino pronaći u kantama pored onih na USB AC i 12v auto adapterima; u većini bilo koje robne kuće odjel elektronike.

Korak 4: Izborni eksperimenti s vanjskim komponentama

Izborni pokusi s vanjskim komponentama
Izborni pokusi s vanjskim komponentama

Napomena: Ako priložite pravi gumb, postoji jedan redak koda koji treba komentirati, kako je navedeno u kodu.

Sa zvučnikom, jedna strana prema zemlji, ako dodirnete drugi vod prema D4 čut ćete zvuk kvadratnog vala od 250 Hz. Na D3 postoji kvadratni val od 500Hz. Ako spojite zvučnik između D3 i D4, čut ćete kompozit dva signala.

Priključivanje LED umjesto zvučnika kao što je gore vrlo je zanimljivo. Nema potrebe brinuti se oko napona, razine struje, otpornika, pa čak ni polariteta (u gorem slučaju ne svijetli, samo ga okrenite). Pokušajte, prije svega, s negativnim (katodnim) vodičem spojenim na masu, a drugi na D3 ili D4. LED će biti "napola" upaljena, zbog kvadratnih valova. Nadalje, nije potreban otpornik jer je izlaz jedinica mikrokontrolera trenutno ograničen. Napravio sam trenutna mjerenja koja su rezultirala 15ma i 20ma za MCT -e Attiny85 i Atmega328. Ove su razine otprilike polovica trenutne ograničene vrijednosti za ove dijelove zbog prirode 50% radnog ciklusa pogonskih signala kvadratnog vala. Očitavanja mjerača zapravo su prosjek struje kroz ispitivano kolo.

Zanimljivo je da ako premostite D3 i D4 pomoću LED diode (pogledajte sliku gore i lijevo), ona će svijetliti u oba smjera, a na otprilike ½ svjetline kao i kod jedne strane spojene na uzemljenje. Pozivam vas da razmislite zašto.

Preporučeni: