Përmbajtje:

Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitiv & LED: 4 hapa
Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitiv & LED: 4 hapa

Video: Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitiv & LED: 4 hapa

Video: Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitiv & LED: 4 hapa
Video: Бесконтактный датчик температуры дальнего действия MLX90614-DCI с Arduino 2024, Korrik
Anonim
Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitive dhe LED
Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitive dhe LED
Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitive dhe LED
Test Bare Arduino, me softuer loje duke përdorur hyrje kapacitive dhe LED

Lojë interaktive "Push-It" duke përdorur një tabelë të zhveshur Arduino, nuk ka nevojë për pjesë të jashtme ose instalime elektrike (përdor një hyrje kapacitive të "prekjes"). E paraqitur më lart, demonstron se funksionon në dy dërrasa të ndryshme.

Push-Ka dy qëllime.

  1. Për të demonstruar/verifikuar shpejt që bordi juaj Arduino funksionon dhe se jeni konfiguruar siç duhet për të shkarkuar një skicë të re të kodit në të. Ju do të jeni në gjendje të shihni se ai kryen hyrje dhe dalje (kuptoni nivelin e hyrjes dixhitale, daljen në LED në bord); ruani dhe rikuperoni një vlerë nga kujtesa jo e paqëndrueshme EEPROM. Të gjitha pa bashkuar tela ose pajisje.
  2. Siguroni një lojë zbavitëse dhe sfiduese duke bashkëvepruar me një bord Arduino.

Ky udhëzues supozon që ju tashmë keni instaluar një Arduino IDE dhe jeni të paktën minimalisht të njohur me përdorimin e tij. Nëse jo, ju referoj në këto lidhje:

Fillimi me Arduino

Shtimi i mbështetjes së Digispark (me bootloader) në Arduino ekzistues 1.6.x IDE

Push-Do të punojë me shumicën e çdo bordi Arduino, p.sh. një bord Nano, Uno, ose DigiSpark Attiny85. Unë e kam testuar atë me një Nano 3.1 dhe një DigiSpark. Në tekst kur i referohem emrave/numrave të kunjave ato do të përdoren siç përdoren në tabelën Nano (në krahasim me DigiSpark).

Hapi 1: Të kesh gjërat që do të të duhen

Cili është thjesht çdo bord Arduino ose i krahasueshëm.

Nëse nuk e keni një të tillë, ju rekomandoj të filloni me një DigiSpark Pro (12 dollarë), ose një Nano 3.0 nga eBay për 3 dollarë (por do të keni një ose dy javë shtesë për të pritur që ai të vijë nga Kina; dhe do t'ju duhet të instaloni një shofer USB CH340). DigiSpark ~ 10 $ (jo Pro) është shumë i përshtatshëm për këtë lojë video "bit" (Kjo njësi e zhveshur, me vetëm 6 I/O, është pak më e ndërlikuar për t'u ngarkuar)

Lidhjet me harduerin e përdorur këtu:

Nano V3.0 Atmega328P në eBay

Bordi i Zhvillimit Digispark USB

Hapi 2: Shkarkoni dhe Shkarkoni Kodin

Merrni dhe Shkarkoni Kodin
Merrni dhe Shkarkoni Kodin

Kopjoni kodin e mëposhtëm në një skedar skicimi arduino (p.sh.…/Push_It/Push_It.ino) Unë jam përpjekur ta komentoj mjaft mirë. Shpresoj se e keni gjetur kodin lehtësisht të kuptueshëm. Logjika për të përcaktuar se kur të rritet, zvogëlohet dhe kur jo është disi e ndërlikuar, por ajo pjesë është gjithashtu kod i specializuar dhe nuk është i dobisë së përgjithshme. Për më shumë detaje mbi ngritjen e një "skice" (projekti të kodit) të ri që do të përdoret me Arduino IDE shikoni:

Krijimi i një Skicë të Re Arduino

Shkarkoni skicën 'Push_It' në mikrokontrolluesin tonë sipas udhëzimeve të Arduino IDE për bordin tuaj.

Hapi 3: Duke luajtur

Duke luajtur
Duke luajtur

Qëllimi i lojës është që LED (në bord) të ndizet sa më shumë që të jetë e mundur në një grup ndezjesh të cilat pastaj përsëriten

Duke luajtur lojën:

Push-Fillon me një blic të vetëm, i cili më pas do të përsëritet. Nëse prekni gishtin pranë kunjit të hyrjes ndërsa LED është ndezur, cikli tjetër do ta ndezë LED dy herë.

Sa herë që shtypni butonin pseudo gjatë blicit të parë të një grupi ndezjesh, një blic tjetër do t'i shtohet atij grupi. Në përgjithësi nuk ka rëndësi kur ngrini/hiqni gishtin.

Por nëse 'shtyni' para ose pas ndezjes së parë, numri i ndezjeve në një grup do të zvogëlohet.

Nëse nuk bëni asgjë më shumë, numri i ndezjeve në një grup ruhet. Më tej kur numërimi mbetet i pandryshuar për një cikël të plotë, numri i numërimit ruhet në kujtesën EEPROM.

Sa herë që arrini të rrisni numërimin e blicit, koha shpejtohet pak, duke e bërë më të vështirë dhe më të vështirë arritjen e numrave të lartë të blicit. Kur bëni një rrëshqitje lart dhe numri i ndezjeve zvogëlohet, do të ketë një pauzë më të gjatë para fillimit të ndezjes së ciklit tjetër. Kjo siguron një sfidë të shtuar, pasi mund të rrisë mundësinë e hedhjes së armës. Prandaj qëndroni vigjilentë.

Pasi të keni marrë njësinë tuaj deri në një numër të lartë të blicave, mund ta çoni (ose ta dërgoni me postë, për të cilën DigiSpark është i mirë) te një mik, ku pasi ta lidhni atë, ata do të shohin se sa të lartë janë një numër flash që e keni ngritur tuajin te Unë e kam gjetur të lë sfiduese për ta marrë atë deri në më shumë se 8. Me një buton aktual të bashkangjitur kam arritur ta marr atë deri në mbi një duzinë. Për t'u kthyer përsëri në një numër më të ulët, mund ta shtyni vazhdimisht në çdo kohë para ose pas ndezjes së parë. Gjithashtu nëse kërceni pinin e hyrjes në tokë gjatë një ndezjeje, numërimi do të rivendoset në 1.

Vini re se bordi origjinal DigiSpark ka një vonesë prej 10 sekondash pas ndezjes para së cilës do të fillojë të kryejë kodin 'Push-It' dhe të luajë lojën. Ai e përdor këtë kohë për të provuar të flasë përmes kunjave USB për të marrë një azhurnim të mundshëm të ri të kodit të shkarkimit.

Nëse bordi Arduino që po përdorni ka një LED TX USB mbi të, kjo LED do të ketë një blic të vogël të shpejtë kur të keni "shtypur butonin" në mënyrë efektive. Do të ketë një ndezje më domethënëse të kësaj LED kur vlera e numërimit në EEPROM të përditësohet me një vlerë të re. Ky reagim mund t'ju ndihmojë shumë për të ditur se kur ose siguroheni që keni shkaktuar në mënyrë efektive një ngjarje 'të shtypur butonin'. Ju mund të keni nevojë të siguroheni që nuk po prekni tokën e qarkut (si metali rreth një lidhësi mikro-USB) në mënyrë që figura juaj të shkaktojë vërtet zhurmë në kunjin e hapur të hyrjes. Do të ketë sfida të shtuara dhe disi të paparashikueshme për shkak të faktit se kunja hyrëse po lundron (nuk tërhiqet lart ose poshtë nga një ngarkesë përçuese/rezistente) dhe zhurma e ndryshueshme e sinjalit që vjen përmes gishtit tuaj.

Një valë katrore 250Hz lëshohet në një kunj pranë kunjit hyrës, i cili përmirëson shumë sigurinë e një sinjali hyrës të injektuar kur gishti juaj mbulon të dy kunjat.

Kam gjetur se përgjigja e bordit DigiSpark është mjaft e parashikueshme në mënyrë të vazhdueshme për një shtrëngim të vogël të gishtërinjve në cep të tabelës ku janë D3-D5.

Kur luaj "Push-It" më pëlqen ta bëj këtë me tabelën e lidhur me një paketë baterie USB 5v (shiko fotot). Këto në përgjithësi mund të gjenden lirë në koshat pranë atyre të USB AC dhe 12v auto adapters; në shumicën e çdo dyqaneve departamenti i elektronikës.

Hapi 4: Eksperimente Opsionale me Komponentë të Jashtëm

Eksperimente Opsionale me Komponentë të Jashtëm
Eksperimente Opsionale me Komponentë të Jashtëm

Ju lutemi vini re: Nëse i bashkëngjitni një butoni të vërtetë, ekziston një linjë e kodit e cila duhet të komentohet, siç thuhet në kod.

Me një altoparlant, nga njëra anë në tokë, nëse prekni prizën tjetër në D4 do të dëgjoni tingullin e një vale katrore 250 Hz. Në D3 ka një valë katrore 500Hz. Nëse lidhni altoparlantin midis D3 dhe D4 do të dëgjoni një përbërje të dy sinjaleve.

Lidhja e një LED në vend të një altoparlanti si më sipër është shumë interesante. Nuk ka nevojë të shqetësoheni për tensionin, nivelet e rrymës, rezistencat, apo edhe polaritetin për atë çështje (në rastin më të keq nuk ndizet, atëherë vetëm kthejeni atë). Provoni, para së gjithash, me plumb negativ (katodë) të lidhur me tokën dhe tjetri ose me D3 ose D4. LED do të ndizet 'gjysmë', për shkak të valëve katrore. Për më tepër, nuk kërkohet rezistencë pasi dalja e Njësive të Mikrokontrolluesit është e kufizuar aktualisht. Kam bërë matjet aktuale duke rezultuar në 15ma dhe 20ma për MCU -të Attiny85 dhe Atmega328 respektivisht. Këto nivele janë rreth gjysma e vlerës aktuale të kufizuar për këto pjesë për shkak të natyrës së ciklit të punës 50% të sinjaleve të valës katrore lëvizëse. Leximet e njehsorit janë në fakt një mesatare e rrymës përmes qarkut të testuar.

Interestshtë interesante, nëse lidhni mes D3 dhe D4 me LED (shiko imazhin lart dhe në të majtë) do të ndriçojë në çdo drejtim, dhe në afërsisht ½ shkëlqimin siç bëri me njërën anë të lidhur me tokën. Ju ftoj të mendoni pse.

Recommended: