Мазмуну:
- 1 -кадам: Сизге керектүү нерселерге ээ болуу
- 2 -кадам: Кодду алып келип түшүрүңүз
- 3 -кадам: ойноо
- 4 -кадам: Тышкы компоненттер менен кошумча эксперименттер
Video: Сыноо Жалаң Arduino, Оюн программасы менен Capacitive Input & LEDди колдонуу: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
"Push-It" интерактивдүү оюну жылаңач Arduino тактасын колдонуп, тышкы бөлүктөрү же зымдары кереги жок (сыйымдуу "тийүү" киргизүүнү колдонот). Жогоруда көрсөтүлгөн, бул эки башка тактада иштеп жатканын көрсөтөт.
Түртүү-Анын эки максаты бар.
- Сиздин Arduino тактаңыз иштээрин жана ага жаңы коддун эскизин жүктөө үчүн туура орнотулгандыгыңызды тез көрсөтүү/ырастоо үчүн. Сиз анын кирүү жана чыгууну аткара турганын көрө аласыз (санариптик кирүү деңгээлин сезүү, борттогу LEDге чыгаруу); сактоо жана EEPROM эс тутумунан баалуулукту калыбына келтирүү. Баары зымдарды же түзмөктөрдү тиркебестен.
- Arduino тактасы менен өз ара аракеттенүүчү кызыктуу жана татаал оюн көрсөтүңүз.
Бул көрсөтмө сиз буга чейин Arduino IDE орнотконсуз жана анын колдонулушу менен жок дегенде минималдуу тааныш экениңизди билдирет. Болбосо, мен бул шилтемелерге кайрылам:
Arduino менен баштоо
Учурдагы Arduino 1.6.x IDEге Digispark (жүктөгүч менен) колдоосун кошуу
Push-It көпчүлүк Arduino такталары менен иштейт, мис. Мен Nano, Uno же DigiSpark Attiny85 тактасы. Мен аны Nano 3.1 жана DigiSpark менен сынап көрдүм. Тексттин аталыштарына/сандарына шилтеме бергенде алар Nano тактасында (DigiSparkке карама -каршы) колдонулат.
1 -кадам: Сизге керектүү нерселерге ээ болуу
Бул жөн эле ар кандай Arduino же окшош такта.
Эгерде сизде жок болсо, мен DigiSpark Pro (~ $ 12) же eBayден Nano 3.0 менен баштоону сунуштайм ~ 3 долларга (бирок анын Кытайдан келишин күтүш үчүн дагы бир же эки жума убакыт болот); жана сиз CH340 USB драйверин орнотушуңуз керек). DigiSpark ~ $ 10 (Pro эмес) бул бир аз "видео" оюнуна абдан ылайыктуу (Бул бир гана 6 I/O бар, жүктөө үчүн бир аз татаалыраак)
Бул жерде колдонулган жабдыктарга шилтемелер:
EBayде Nano V3.0 Atmega328P
Digispark USB өнүктүрүү кеңеши
2 -кадам: Кодду алып келип түшүрүңүз
Төмөндөгү кодду arduino эскиз файлына көчүрүңүз (мисалы …/Push_It/Push_It.ino) Мен аны жакшы комментарийлөөгө аракет кылдым. Мен кодду түшүнүктүү деп ишенем. Качан көбөйтүү, азайтуу жана качан эмес экенин аныктоо үчүн логика бир аз татаал, бирок бул бөлүк дагы адистештирилген код жана жалпы пайдалуулукка жатпайт. Arduino IDE караңыз:
Жаңы Arduino эскизин түзүү
"Push_It" эскизин биздин такта үчүн Arduino IDE көрсөтмөлөрүнө ылайык биздин микроконтроллерге түшүрүп алыңыз.
3 -кадам: ойноо
Оюндун максаты-LEDди (бортто) мүмкүн болушунча көп ирет жаркылдатып, андан кийин кайталана берүү.
Оюн ойноодо:
Түртүү-Бул бир жарк менен башталат, ал кайра кайталанат. Эгер LED күйүп турганда манжаңызды киргичтин жанына тийгизсеңиз, кийинки цикл LEDди эки жолу жаркылдатат.
Жаркыроонун биринчи жарыгы учурунда псевдо баскычын баскан сайын, бул топтомго дагы бир жарк кошулат. Манжаңызды качан көтөрүп/алып салганыңыздын мааниси жок.
Бирок, эгер сиз биринчи жарк этүүгө чейин же андан кийин "түртсөңүз", топтомдогу жаркылдоо саны азаят.
Эгерде сиз башка эч нерсе кылбасаңыз, анда топтомдогу жаркылдаган саны сакталат. Андан ары толук цикл үчүн эсеп өзгөрүүсүз калганда, сан саны EEPROM эстутумунда сакталат.
Жаркыроо санын көбөйтүүгө жетишкен сайын, убакыт бир аз ылдамдайт, бул флештин жогорку санына чейин жетүүнү кыйындатат. Качан сиз тайып кетсеңиз жана жаркыроо саны азайса, кийинки циклдин башталышына чейин узунураак пауза болот. Бул кошумча тапшырманы берет, анткени ал мылтыктан секирүү ыктымалдыгын жогорулатат. Андыктан сергек болуңуз.
Түзмөгүңүздү флештин жогорку санына жеткиргенден кийин, аны досуңузга жөнөтө аласыз (же DigiSpark үчүн жакшы болгон почтага), аны туташтырганда алар сиздин жаркырооңуздун канчалык жогору болгонун көрүшөт. чейин Мен аны 8ден ашык алуу үчүн кыйын болуп калдым. Чыныгы баскычты тиркеп койгондон кийин, мен аны ондон ашыкка чейин жеткире алдым. Төмөнкү санга кайтуу үчүн, биринчи жарк этүүгө чейин же андан кийин каалаган убакта кайталап бассаңыз болот. Ошондой эле, эгер сиз кубаттоо учурунда кирүүчү пинди жерге секирип койсоңуз, эсеп 1ге чейин калыбына келтирилет.
Көңүл буруңуз, баштапкы DigiSpark тактасы күйгүзүлгөндөн кийин 10 секундага кечигет, ага чейин "Push-It" кодун аткарып, оюнду ойной баштайт. Бул мүмкүн болгон жаңы жүктөө кодун жаңыртууну алуу үчүн USB түйрөөчтөрү аркылуу сүйлөшүүгө аракет кылуу үчүн колдонулат.
Эгерде сиз колдонгон Arduino тактасында USB TX LEDи бар болсо, анда сиз натыйжалуу "баскычты" басканыңызда, бул LED тез кичинекей жарк этип калат. EEPROMдо эсептөө мааниси жаңы маани менен жаңыртылганда, бул LEDдын дагы олуттуу жарыгы болот. Бул пикир сизге "баскычты басуу" иш -чарасын качан натыйжалуу баштаганыңызды же камсыздандырууну билүүгө чоң жардам берет. Сиздин фигураңыз чындап эле ачык кирүүчү пинге ызы-чууну жаратышы үчүн, сиз райондук жерге (микро-USB туташтыргычынын тегерегиндеги сыяктуу) тийбешиңизди камсыз кылышыңыз керек болот. Кирүүчү пиндин калкып жүргөндүгүнө (өткөргүч/каршылыктуу жүктөм менен өйдө же ылдый тартылганына) жана манжаңыз аркылуу келе жаткан өзгөрмө сигнал ызы -чуусуна байланыштуу кошумча жана бир аз күтүүсүз кыйынчылыктар болот.
250 Гц квадрат толкуну кирүүчү пиндин жанындагы пинге чыгарылат, бул манжаңыз эки казыкты тең жапканда, киргизилген сигналдын ишенимдүүлүгүн абдан жакшыртат.
Мен DigiSpark коллегиясынын жоопторун D3-D5 турган тактанын бурчуна манжаларды бир аз кысуу үчүн алдын ала айтууга болот деп таптым.
Мен "Push-It" ойногондо, USB 5v мобилдик батарея пакетине туташкан тактай менен ушундай кылууну жакшы көрөм (сүрөттөрдү караңыз). Аларды көбүнчө USB AC жана 12v авто адаптерлеринин жанындагы урналарда арзан табууга болот; көпчүлүк дүкөндөрдө электроника бөлүмү бар.
4 -кадам: Тышкы компоненттер менен кошумча эксперименттер
Көңүл буруңуз: эгерде сиз чыныгы баскычты тиркеп койсоңуз, анда коддо айтылгандай, комментарийлениши керек болгон коддун бир сабы бар.
Катуу сүйлөткүч менен, бир тарап жерге, эгер сиз D4кө башка коргошун тийгизсеңиз, сиз 250 Гц чарчы толкундун үнүн угасыз. D3те 500 Гц квадрат толкуну бар. Динамикти D3 менен D4тун ортосуна туташтырсаңыз, эки сигналдын курамын угасыз.
Динамиктин ордуна LEDди илип коюу абдан кызыктуу. Бул үчүн чыңалуу, токтун деңгээли, каршылаштар же полярдуулук жөнүндө тынчсыздануунун кажети жок (эң жаманы, ал күйбөйт, андан кийин аны буруп коюңуз). Биринчиден, терс (катод) коргошун жерге, экинчисин D3 же D4ке туташтырып көрүңүз. Жарык диод төрт бурчтуу толкундарга байланыштуу "жарым" күйөт. Мындан ары эч кандай каршылаштын кереги жок, анткени MicroControllerUnitsтин чыгышы чектелген. Мен учурдагы өлчөөлөрдү кылдым, натыйжада Attiny85 жана Atmega328 MCUs үчүн 15ma жана 20ma алынды. Бул деңгээлдер бул бөлүктөрдүн 50% милдети циклинин мүнөзүнүн айынан болжол менен жарымын түзөт. Эсептегичтин көрсөткүчтөрү чындыгында сыналган чынжыр аркылуу өткөн токтун орточо көрсөткүчү.
Кызыктуусу, эгерде сиз D3 & D4 менен LEDди бириктирсеңиз (жогорудагы сүрөттү жана сол жагын караңыз), ал эки тарапка тең жарыкка жакын болот, жана анын бир тарабы жерге туташтырылган. Мен эмне үчүн ойлонууга чакырам.
Сунушталууда:
Arduino негизделген DIY оюн контролери - Arduino PS2 оюн контроллери - DIY Arduino Gamepad менен Tekken ойноо: 7 кадам
Arduino негизделген DIY оюн контролери | Arduino PS2 оюн контроллери | DIY Arduino Gamepad менен Tekken ойноо: Саламатсыздарбы балдар, оюндарды ойноо ар дайым кызыктуу, бирок өзүңүздүн DIY колдонмо оюнуңузду башкаруучу менен ойноо алда канча кызыктуу. Ошентип, биз бул инструкцияларда arduino pro micro колдонуп оюн контроллерин жасайбыз
Көп түстүү LEDди колдонуу менен сериялык LED жарык: 3 кадам (сүрөттөр менен)
Сериялык LED жарык көп түстүү светодиоддорду колдонуу менен: Сериалдык LED жарык анча кымбат эмес, бирок эгер сиз мага окшоп DIY сүйгөн (хоббиист) болсоңуз, анда сиз өзүңүздүн сериялык диоддоруңузду жасай аласыз жана ал базардагы жарыкка караганда арзаныраак. Мен 5 вольтто иштеген сериялык LED жарыгын жасайм
KerbalController: Кербал космос программасы үчүн ракеталык оюн үчүн атайын башкаруу панели: 11 кадам (сүрөттөр менен)
KerbalController: ракеталык оюндар үчүн атайын башкаруу панели Kerbal Space программасы: Эмне үчүн KerbalController курулат? Ооба, анткени баскычтарды басуу жана физикалык өчүргүчтөрдү ыргытуу чычканыңызды баскандан алда канча олуттуу сезилет. Айрыкча, бул чоң кызыл коопсуздук ачкычы болгондо, сиз биринчи капкагын ачышыңыз керек, которгучту басыңыз
Смартфонду колдонуу менен Arduino программасы: 6 кадам (сүрөттөр менен)
Смартфонду колдонуу менен Arduino программасы: Бул Нускамада мен сизге Arduino тактасын смартфонуңуз менен кантип программалоону көрсөткөм
ESP32 NodeMCU WiFi & Bluetooth Module үйрөткүчүн колдонуу менен LEDди күйгүзүү: 5 кадам
ESP32 NodeMCU WiFi & Bluetooth Module үйрөткүчүн колдонуу менен LEDди күйгүзүңүз: DescriptionNodeMCU - IOTтун ачык булагы. Бул Lua скрипт тили аркылуу программаланган, платформа eLua ачык булак долбоорлоруна негизделген. Платформа lua-cjson, spiffs сыяктуу көптөгөн ачык коддуу долбоорлорду колдонот. Бул ESP32 NodeMc