Բովանդակություն:

Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով `օգտագործելով capacitive input և LED: 4 քայլ
Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով `օգտագործելով capacitive input և LED: 4 քայլ

Video: Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով `օգտագործելով capacitive input և LED: 4 քայլ

Video: Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով `օգտագործելով capacitive input և LED: 4 քայլ
Video: Կառավարեք AC լամպը Arduino AC Dimmer- ով 2024, Նոյեմբեր
Anonim
Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով, օգտագործելով Capacitive Input & LED
Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով, օգտագործելով Capacitive Input & LED
Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով, օգտագործելով Capacitive Input & LED
Փորձեք մերկ Arduino- ն, խաղային ծրագրակազմով, օգտագործելով Capacitive Input & LED

«Push-It» ինտերակտիվ խաղ ՝ օգտագործելով մերկ Arduino տախտակ, արտաքին մասերի կամ էլեկտրագծերի կարիք չկա (օգտագործում է տարողունակ «հպման» մուտք): Վերևում ցուցադրված ՝ ցույց է տալիս, որ այն աշխատում է երկու տարբեր տախտակների վրա:

Հրել-Այն ունի երկու նպատակ.

  1. Արագ ցուցադրելու/հաստատելու համար, որ ձեր Arduino- ի տախտակն աշխատում է, և որ դուք ճիշտ եք կարգաբերված ՝ դրա վրա ներբեռնելու նոր ծածկագրի ուրվագիծը: Դուք կկարողանաք տեսնել, որ այն կատարում է մուտք և ելք (զգալ թվային մուտքի մակարդակը, ելքը դեպի ներկառուցված LED); պահպանել և վերականգնել արժեքը ոչ անկայուն EEPROM հիշողությունից: Բոլորը ՝ առանց լարեր կամ սարքեր ամրացնելու:
  2. Տրամադրեք զվարճալի և դժվարին խաղ ՝ համագործակցելով Arduino տախտակի հետ:

Այս հրահանգը ենթադրում է, որ դուք արդեն տեղադրել եք Arduino IDE և առնվազն նվազագույն ծանոթ եք դրա օգտագործմանը: Եթե ոչ, ես ձեզ հղում եմ կատարում այս հղումներին.

Սկսելով աշխատել Arduino- ով

Digispark (bootloader- ով) աջակցություն ավելացնելով գոյություն ունեցող Arduino 1.6.x IDE- ին

Push-It- ը կաշխատի ցանկացած Arduino տախտակի հետ, օրինակ. a Nano, Uno, կամ DigiSpark Attiny85 տախտակ: Ես այն փորձարկել եմ Nano 3.1 -ով և DigiSpark- ով: Տեքստում, երբ անդրադառնամ կապերի անուններին/թվերին, դրանք կօգտագործվեն Նանո տախտակի վրա (ի տարբերություն DigiSpark- ի):

Քայլ 1: Ունեք այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն

Որը պարզապես ցանկացած Arduino կամ համեմատելի տախտակ է:

Եթե դուք դեռ չունեք մեկը, խորհուրդ եմ տալիս սկսել DigiSpark Pro- ով (~ 12 դոլար) կամ eBay- ի Nano 3.0 -ով ~ 3 դոլարով (բայց դուք կունենաք լրացուցիչ մեկ -երկու շաբաթ `սպասելու, որ այն գա Չինաստանից; և ձեզ հարկավոր է տեղադրել CH340 USB վարորդ): DigiSpark- ը $ 10 (ոչ Pro) շատ լավ է համապատասխանում այս «բիդ» խաղին (այս մերկացված միավորը, ունենալով ընդամենը 6 մուտք/մուտք, մի փոքր ավելի բարդ է վերբեռնել)

Հղումներ դեպի այստեղ օգտագործվող սարքավորումներ.

Nano V3.0 Atmega328P eBay- ում

Digispark USB զարգացման տախտակ

Քայլ 2: Ձեռք բերեք և ներբեռնեք ծածկագիրը

Բեռնել և ներբեռնել ծածկագիրը
Բեռնել և ներբեռնել ծածկագիրը

Ստորև պատճենեք arduino էսքիզային ֆայլի մեջ (օրինակ…/Push_It/Push_It.ino) Ես փորձել եմ այն բավականին լավ մեկնաբանել: Հուսով եմ, որ կոդը ձեզ համար հասկանալի է թվում: Որոշել, թե երբ պետք է ավելանալ, նվազել և երբ ՝ ոչ, որոշ չափով բարդ է, բայց այդ մասը նաև մասնագիտացված ծածկագիր է և ընդհանուր օգտակարություն չունի: Նոր «ուրվագիծ» (կոդի նախագիծ) ստեղծելու մասին ավելի մանրամասն տեղեկությունների համար Arduino IDE- ն տես ՝

Ստեղծելով նոր Arduino էսքիզ

Ներբեռնեք «Push_It» էսքիզը մեր միկրոկոնտրոլերի մեջ `ձեր տախտակի Arduino IDE հրահանգների համաձայն:

Քայլ 3: Խաղալ

Խաղում
Խաղում

Խաղի նպատակն է հասնել նրան, որ LED- ը (ինքնաթիռում) հնարավորինս շատ անգամ թարթվի մի քանի բռնկումներով, որոնք այնուհետև կրկնվում են

Խաղալ խաղը

Push-It- ը սկսվում է մեկ բռնկումով, որն այնուհետև կկրկնվի: Եթե մատը դիպչեք մուտքի քորոցի մոտ, մինչ LED- ն միացված է, հաջորդ ցիկլը LED- ը երկու անգամ կթարթի:

Ամեն անգամ, երբ սեղմում եք կեղծ կոճակը, մի շարք բռնկումներից մեկ այլ բռնկում կավելանա այդ հավաքածուին: Ընդհանրապես նշանակություն չունի, թե երբ եք բարձրացնում/հեռացնում ձեր մատը:

Բայց եթե դուք «հրում» եք առաջին բռնկումից առաջ կամ հետո, հավաքածուի մեջ առկայծումների թիվը կկրճատվի:

Եթե ավելին չանեք, մի շարք բռնկումների քանակը պահպանվում է: Հետագայում, երբ հաշվարկն անփոփոխ է մնում ամբողջ ցիկլի համար, համարի թիվը պահվում է EEPROM հիշողության մեջ:

Ամեն անգամ, երբ հաջողվում է բարձրացնել բռնկումների քանակը, ժամանակը մի փոքր արագանում է ՝ ավելի ու ավելի դժվար դարձնելով բռնկման բարձր ցուցանիշների հասնելը: Երբ դուք իսկապես սայթաքում եք, և բռնկումների թիվը նվազում է, հաջորդ ցիկլի մեկնարկից առաջ ավելի երկար դադար կլինի: Սա լրացուցիչ մարտահրավեր է տալիս, քանի որ դա կարող է մեծացնել զենքը նետելու հավանականությունը: Այսպիսով, զգոն եղեք:

Երբ ձեր միավորը հասցնում եք բռնկման բարձր ցուցանիշի, կարող եք այն վերցնել (կամ ուղարկել այն, որի համար DigiSpark- ը լավ է) ձեր ընկերոջը, որտեղ այն միացնելուց հետո նրանք կտեսնեն, թե որքան բարձր է ձեր բռնկումը: դեպի. Ինձ համար դժվար է այն հասցնել մինչև 8 -ից ավելին: Կցված փաստացի կոճակով ինձ հաջողվել է այն հասցնել մինչև մեկ տասնյակի: Ավելի ցածր ցուցանիշին վերադառնալու համար կարող եք բազմիցս սեղմել այն ցանկացած պահի ՝ առաջին բռնկումից առաջ կամ հետո: Բացի այդ, եթե մուտքի քորոցը ցատկեք գետնին միացման ժամանակ, հաշվարկը կվերականգնվի 1 -ի:

Նկատի ունեցեք, որ DigiSpark- ի տախտակը միացումից հետո ունի 10 վայրկյան ուշացում, որից առաջ այն կսկսի կատարել «Push-It» ծածկագիրը և խաղալ խաղը: Այն օգտագործում է այս ժամանակը `USB պիների միջոցով խոսելու համար` ներբեռնման կոդի հնարավոր նոր թարմացում ստանալու համար:

Եթե ձեր օգտագործած Arduino տախտակը ունի USB TX LED, ապա այս LED- ը կունենա արագ փոքրիկ բռնկում, երբ արդյունավետորեն «սեղմեք կոճակը»: Այս LED- ի ավելի զգալի առկայծում կլինի, երբ երբևէ EEPROM- ում հաշվարկի արժեքը թարմացվի նոր արժեքով: Այս հետադարձ կապը կարող է ձեզ մեծապես օգնել `իմանալու, թե երբ կամ ապահովագրեք, որ դուք արդյունավետորեն հրահրել եք« սեղմված կոճակը »միջոցառում: Հնարավոր է, անհրաժեշտ լինի ապահովել, որ դուք չեք դիպչում շրջանի գետնին (ինչպես միկրո USB միակցիչի շուրջը գտնվող մետաղը), որպեսզի ձեր գործիչն իսկապես աղմուկ բարձրացնի բաց մուտքի քորոցին: Լրացուցիչ և որոշ չափով անկանխատեսելի մարտահրավերներ կլինեն `պայմանավորված այն հանգամանքով, որ մուտքի քորոցը լողում է (հաղորդիչ/դիմադրողական բեռով վեր կամ վար չի քաշվում) և ձեր մատից եկող ազդանշանի փոփոխական աղմուկը:

250 Հց քառակուսի ալիքը դուրս է բերվում մուտքի քորոցի կողքին գտնվող մի քորոցի վրա, ինչը մեծապես բարելավում է ներարկվող ազդանշանի վստահությունը, երբ ձեր մատը ծածկում է երկու կապում:

Ես գտա, որ DigiSpark- ի տախտակի պատասխանը բավականին հետևողականորեն կանխատեսելի է `մատների մի փոքր սեղմումով դեպի տախտակի այն անկյունը, որտեղ գտնվում են D3-D5- ը:

«Push-It» նվագելիս ես սիրում եմ դա անել USB 5v բջջային մարտկոցի տուփին միացված տախտակի հետ (տես լուսանկարները): Սրանք ընդհանրապես էժան կարելի է գտնել USB AC և 12v ավտոմատ ադապտերների կողքին գտնվող աղբարկղերում: էլեկտրոնիկայի բաժնի ցանկացած հանրախանութի մեծ մասում:

Քայլ 4. Արտաքին բաղադրիչներով կամայական փորձեր

Ընտրովի փորձեր արտաքին բաղադրիչներով
Ընտրովի փորձեր արտաքին բաղադրիչներով

Խնդրում ենք նկատի ունենալ. Եթե իրական կոճակ կցեք, կա մեկ տող կոդ, որը պետք է մեկնաբանվի, ինչպես նշված է ծածկագրում:

Բարձրախոսով ՝ մի կողմից գետնին, եթե մյուս կապիչին դիպչեք D4- ին, կլսեք 250 Հց քառակուսի ալիքի ձայն: D3- ում կա 500 Հց քառակուսի ալիք: Եթե բարձրախոսը միացնեք D3- ի և D4- ի միջև, կլսեք երկու ազդանշանների կոմպոզիտ:

Շատ հետաքրքիր է բարձրախոսի փոխարեն LED- ի միացումը: Կարիք չկա անհանգստանալու լարման, հոսանքի մակարդակների, դիմադրիչների կամ նույնիսկ բևեռականության համար (ավելի վատ դեպքում այն չի լուսավորվում, այնուհետև շրջեք այն): Փորձեք, առաջին հերթին, բացասական (կաթոդ) կապը միացնել գետնին, իսկ մյուսը կամ D3- ին կամ D4- ին: LED- ը կլուսավորվի «կիսով չափ» ՝ քառակուսի ալիքների պատճառով: Հետագայում ոչ մի դիմադրություն չի պահանջվում, քանի որ MicroControllerUnits- ի թողարկումը ընթացիկ սահմանափակ է: Ես կատարեցի ընթացիկ չափումներ, որոնց արդյունքում ստացվեց 15 և 20 մ համապատասխանաբար Attiny85 և Atmega328 MCU- ների համար: Այս մակարդակները կազմում են այս մասերի ընթացիկ սահմանափակ արժեքի մոտավորապես կեսը `պայմանավորված շարժիչ քառակուսի ալիքների ազդանշանների 50% աշխատանքային ցիկլի բնույթով: Հաշվիչի ընթերցումները իրականում փորձարկված սխեմայի միջով հոսանքի միջինն են:

Հետաքրքիր է, որ եթե D3- ի և D4- ի միջև կամրջեք LED- ով (տե՛ս վերևի և ձախ պատկերը), այն կլուսավորվի որևէ կերպ, և մոտավորապես ½ պայծառությունը, ինչպես դա արեց գետնին միացված մի կողմից: Ես հրավիրում եմ ձեզ խորհելու, թե ինչու:

Խորհուրդ ենք տալիս: