Мазмуну:

Tap Tap Rainbow - 2 оюнчуга ыкчам жооп берүү оюну: 4 кадам (сүрөттөр менен)
Tap Tap Rainbow - 2 оюнчуга ыкчам жооп берүү оюну: 4 кадам (сүрөттөр менен)

Video: Tap Tap Rainbow - 2 оюнчуга ыкчам жооп берүү оюну: 4 кадам (сүрөттөр менен)

Video: Tap Tap Rainbow - 2 оюнчуга ыкчам жооп берүү оюну: 4 кадам (сүрөттөр менен)
Video: Я открываю колоду Commander, Arc en Fiel, из Объединенного издания Dominaria. 2024, Декабрь
Anonim
Tap Rainbow таптаңыз - 2 оюнчуга ыкчам жооп берүү оюну
Tap Rainbow таптаңыз - 2 оюнчуга ыкчам жооп берүү оюну
Tap Tap Rainbow - 2 оюнчуга ыкчам жооп берүү оюнун таптаңыз
Tap Tap Rainbow - 2 оюнчуга ыкчам жооп берүү оюнун таптаңыз
Tap Rainbow таптаңыз - 2 оюнчуга ыкчам жооп берүү оюну
Tap Rainbow таптаңыз - 2 оюнчуга ыкчам жооп берүү оюну

LED сабы 3 зымды гана колдонот. Ошентип, мага 5В кубаты (кызыл), жерге (ак) жана сигналга (жашыл) гана керек болчу. Эгерде сиз дагы Espruino колдонсоңуз, анда алардын веб -сайтындагы окуу куралдарын текшериңиз. RGB светодиоддору абдан так түшүндүрүлгөн.

Мен LED жипти 6 LEDдын 3 бөлүгүнө бөлүп, андан кийин аларды кошумча зымдар менен туташтырдым. Ошентип, бардык светодиоддор бир эле массивди колдонушат, бул мени борттогу 2 кошумча портту куткарат жана программалоо оңой.

Баскычтарды туташтыруу бир аз кыйыныраак болду. Мен тактадагы мүмкүн болушунча портторду колдонууну кааладым, ошондуктан I2C орнотуусун колдонууну ойлонуп жаткам, бирок ал ишке ашпай калды. Ишке киргизе албадым, башка нерсени карадым.

Акыр -аягы, мен Espruino боюнча 16 баскыч менен баскычтобу матрицасы катары зымдуу баскычтоп үчүн окуу куралын таптым. Бул ишке ашыруу үчүн абдан жеңил көрүндү, ошондуктан мен ошол жолго бардым. Мага 12 баскыч гана керек болчу, андыктан мага 3x4 матрица керек.

Ариптакта матрицасында бардык баскычтар мамычаларга жана саптарга туташтырылган. Бул жол менен сизге 16 баскыч үчүн 8 порт гана керек. Менин орнотуумда мага 2 жолу 6 баскыч гана керек болчу, андыктан тактадагы 7 порттун жалпы саны (3 тилке менен 4 катар). 12 баскычты өзүнчө туташтыргандан кийин дагы деле азыраак жана Espruino клавиатурасынын модулун колдонуу оңой.

Мен баскычтардын зымдарын түзүүдө мага чоң жардам берген райондук негиздери боюнча баскычтоп жөнүндө жакшы окуу куралын таптым.

Мен бардык баскычтарымды туташтыра алганда, мен абдан капа болдум, анткени коннекторлор үзүлүп түшүп, кеч кирип калган. Ошентип, мен баарын кутуга чаптап, сүрөт тартууну таптакыр унутуп койдум. Ошондой эле, колдонуучулар үчүн абдан ыңгайлуу эмес, мен кутучалардын 1инде зымды кайра туташтыруу керек.

3 -кадам: Код жазуу

Код жазуу
Код жазуу
Код жазуу
Код жазуу
Код жазуу
Код жазуу

Espruino Javascriptте программаланган, ошондуктан мен үчүн Arduino кодун жазгандан алда канча татаал.

Код кандайдыр бир оптимизацияны колдонушу мүмкүн, бирок ал азырынча иштейт. Ошондой эле ката бар (балким, бул өзгөчөлүк: D), анда сиз бир эле учурда 2 баскычты баса албайсыз. Бирок бул оюнду ойнотууну бир аз татаалдаштырат (көңүлдү чөгөрүп окуңуз), ошондуктан мен бул маселени азырынча иликтей элекмин, мага ушинтип жагат (эгер сиз уттуруп койсоңуз, анда ал өтө капа болот).

Жарык диоддорун программалоо оңой. Саптагы ар бир LED массивдеги 3 мааниге ээ. Эгер сизде [255, 0, 0, 255, 0, 0] сыяктуу массив болсо, анда сизде биринчи 2 LED кызыл.

Тез карап чыгууда.

1. Алгач мен түстөрүмдү аныктап, бардык түстөрдүн массивин жасайм

2. Андан кийин мен баскычтын идентификаторлору сыяктуу оюнчунун жөндөөлөрүн аныктайм жана ар бир оюнчунун LED сабында кайсы индекси бар

3. Оюндун башталышында мен асан -үсөн массивиндеги бардык түстөрдү аралаштырып, ошол маалыматты жаңы массивге сактайм. Андан кийин мен бардык светодиоддорду баштапкы абалга келтирип, асан -үсөн түстөрүнүн үстүнкү диоддорун күйгүзөм

4. Акыры бизде негизги окуяларды уккан код бар. Мен бардык киргизүүлөрдү массивге сактайм жана бул массивдин туура ырааттуулукта экенин текшерем.

5. Кечээ мен кошумчалаган жакшы кошумча, жеңүүчүлөр укмуштуудай радуга анимациясы менен дарыланат: D

Көңүл ачуу үчүн дагы деле көп нерселер бар, бирок бул кийинчерээк;)

Мен толук кодду жүктөй албай жатам, ошондуктан мен аны Gitlabка койдум

gitlab.com/marzsman/tap_tap_rainbow

4 -кадам: Аны менен көңүл ачыңыз !!! ?

Image
Image
Аны менен көңүл ачыңыз !!! ?
Аны менен көңүл ачыңыз !!! ?

Кызым экөөбүз анын идеясын жазып, ал кандай көрүнүшү керектигин ойлонуп жатканда, мага ошол идея дароо жакты. Бирок мен айтышым керек, мен ойноо мынчалык кызыктуу болот деп ойлогон эмесмин. Бизде буга чейин кээ бир чоң асан -үсөн согуштары болгон: Д.

Мен ишенем, кимдир бирөө биз менен ошончолук көңүл ачат.

Бул ошондой эле менин кыска убакыттын ичинде жасаган биринчи толук проектим жана 8 жаштагы кызым менен бир нерсе кылган ЖАНА бул менин биринчи үйрөткүчүм (АЯКТА!), Ошондуктан ооба, бул мен үчүн абдан өзгөчө долбоор. Ошентип, мен бул жагат деп үмүттөнөм!

Эгерде сизде кандайдыр бир суроолор же сунуштар болсо, мен аларды угууга кубанычтамын!

Сунушталууда: