Съдържание:

42 RGB LED Pixel Art живопис: 5 стъпки
42 RGB LED Pixel Art живопис: 5 стъпки

Видео: 42 RGB LED Pixel Art живопис: 5 стъпки

Видео: 42 RGB LED Pixel Art живопис: 5 стъпки
Видео: soft flexible led screen DIY display shape size 2024, Юли
Anonim
42 RGB LED Pixel Art Painting
42 RGB LED Pixel Art Painting

Хей, Така че за училищна задача, наречена „Ако това тогава онова“, трябваше да направя интерактивно // нещо // с помощта на стартовия комплект Arduino Uno (и каквото и да било друго, което човек беше готов да си купи). Тъй като изучавам изкуство/технология, исках да направя комбинация от двете (изкуство и технологии). Реших, че ще направя картина, състояща се от толкова RGB светодиоди, колкото мога да побера на моя Arduino и ще оставя плейъра/художника да премине ръчно през тези RGB светодиоди и да избере цвят. По този начин те могат да направят свое собствено "пикселно изкуство"!

Стъпка 1: Малко информация и теория

Добре, нека не бием около храста. Ако искате да оживите този проект: Трудно е. Отне ми много часове, за да разбера/науча какво да правя и дори повече, за да го направя, но ако наистина искате кутия, пълна с тел, която може да създава много малки "картини", ще ви науча как.

И така, първо на първо място. Искаме възможно най -много светодиоди/RGB светодиоди на нашия Arduino. Колкото повече (RGB) светодиоди свързвате, толкова по -подробно можете да направите „рисуването“(10x10 пиксела ви дава повече място за размахване, отколкото 2x2 вдясно). Предполагам, че има повече начини всъщност да получите много (RGB) светодиоди на вашите 13 цифрови пина (неща като регистър за смяна), но използвах метод, наречен "Charlieplexing". Ще се свържа с инструкция, която ми помогна да разбера тази концепция (сериозно те я обясняват много добре), но ще ви дам и бързата версия тук. Charlieplexing върви по следния начин:

Поставяте светодиод между щифт 1 и щифт 2, ако зададете щифт 1 на ВИСОК и 2 на НИСКИ, кръгът ще работи гладко и светодиодът ще се включи. Основи. Е, сега прикачвате друг светодиод, но се обърна. Дългият край е на 2, а късият на щифт 1. Сега, ако завъртите щифт 2 на ВИСОК и щифт 1 на НИСКО, вашият втори светодиод ще се включи и първият ви ще остане изключен, защото потокът ще бъде грешен. Сега можете да прикрепите 2 светодиода към 2 пина. Ако получим 3 -ия щифт в микса, можете да направите този трик между 1 и 2, 1 и 3, и 2 и 3. Това са 6 светодиода. Това продължава, 5 пина ще ни предоставят (2 + 4 + 6 + 8) 20 светодиода. Използването на всичките 13 цифрови пина ни дава 156 опции. Това са 156 светодиода, които можете индивидуално да включвате и изключвате.

(добре, така че за тези от вас, които се чудят. Да, когато имате много, е невъзможно да включите някои в същото време, но без притеснения, arduino може да превключва между вашите светодиоди толкова бързо, че човешкото око не може да види трептенето)

(По -добро и по -подробно обяснение, със снимки)

Добре, така че с много усилия, когато става въпрос за окабеляване (ще се докосна до това по -късно), можем да направим доста мрежа от светодиоди, но нека си го кажем. Светодиодите са ужасно скучни. Как може човек да направи картина само с 2 цвята? Предполагам, че бихте могли, но е по -хладно, ако имате повече цветове за избор отдясно? надясно. Така че към RGB светодиодите се обръщаме!

RGB светодиодите са основно 3 светодиода в 1. Те споделят общ катод или анод (където захранването влиза или излиза), а другите 3 "крака" са вашият червен зелен и син светодиод. Имайки това предвид, да, ние също можем да ги озаглавим! Всеки RGB светодиод се брои за 3 обикновени светодиода. По този начин все още можете да ги включвате и изключвате поотделно и да създавате студени цветове, от които да избирате! Единственият недостатък е, че това прави нещата много по -трудни, тъй като трябва да картографирате/планирате и свържете 3 пъти повече светодиоди, отколкото първоначално трябваше.

Отидох за 42 RGB светодиоди на 13 пина. Това са 126 обикновени светодиода … … доста голям брой. Нека ви кажа как го направих.

Стъпка 2: Планиране

Планиране
Планиране

Да, тази стъпка е доста лесна, след като разберете теорията зад това, което правите. По принцип изписвате всичките си светодиоди и планирате кой щифт трябва да отиде на кой „крак“от кой RGB LED, така че да покриете всичките си възможности. Прикачих снимка на моето планиране, не се колебайте да използвате и това (не използвах всички налични опции, тъй като "само" имах нужда от 126 връзки от 156. Аз го структурирах по този начин, защото това би направило конструкцията малко по -изпълнима).

Важно е да направите това на хартия, по -късно ще ви трябва, за да кодирате. Ако не напишете това и объркате 1 връзка, кодът няма да работи за този светодиод.

Стъпка 3: Кодът

Добре, така че ако вече имате идея как да свържете 2 RGB светодиода по този начин на 2 пина: Давай! Хубаво е да проверите кода, но ви уверявам, че работи! Опитах се да направя колкото се може повече „чисто“кодиране, колкото бих могъл (Можете също да управлявате това с превключватели в ключове, но това е просто ужасна караница, която ви накара да запишете целия си код x42, това ме накара да осъзная, че вероятно има по -добър начин).

Целта на кода е следната. Започвате от LED1. Бутон 1 ви позволява да преминете към следващия светодиод, но предишният светодиод остава включен. Бутон 2 ви позволява да се върнете към предишния светодиод, бутон 3 ви позволява да промените цвета. Текущият избран светодиод мига, за да можете да видите кой светодиод е "избран".

За да постигна това, работих с масиви. Създадох LED клас, който използва информацията, която сте записали по време на етапа на планиране, за да видите кой щифт е необходим за създаване на определен цвят. Сложих ги всички в масив и оставих arduino да премине през LEDarray, за да определи кой от тях е включен и чрез колора, за да определи кой цвят е избран (цветът се определя от превключвателя, който позволява да се изберат 7 цвята). Мигането се регулира от оператор if.

Кодът е прикачен, не се колебайте да изтеглите и използвате. Разделът за коментари е отворен за въпроси, ако има нещо, което не разбирате, но можете основно да копирате паста!

Стъпка 4: Най -трудната част

Най-трудната част
Най-трудната част
Най-трудната част
Най-трудната част

Така че сега имате идея, работещ код …., Просто не действителния продукт. Това е най -ужасната част от този проект и бих ви посъветвал да не приемате това леко. Спомняте ли си всички тези различни крака, които завършват с един и същ щифт? ами да … трябва да направите вашата мрежа от светодиоди, след това да свържете всеки крак към всеки друг крак, който трябва да отиде към същия щифт, и след това да ги свържете към споменатия щифт. Това е най -трудната част и моята също не излезе 100% перфектна, но ако сте добри в запояването, може да имате шанс.

Поставих един ред RGB светодиоди наведнъж и свързах меден проводник към всеки крак (препоръчвам меден проводник с обвивка/опаковка. Моят беше твърде дебел и ми причини много мъка). Внимавайте два крака или проводници да не се допират един до друг! след това "просто" свържете всички проводници, които трябва да отидат към един и същ щифт и след това ги свържете към резистор и го свържете към споменатия щифт. Сигурен съм, че има "по -безопасен" начин да направите това, но съм сигурен, че човек ще се удави в тел, докато се опитва и честно…. Вашата дъска е толкова голяма!

(Добавих чертеж, който би могъл да опрости тази стъпка. Той ви казва кой крак трябва да отиде до кой щифт, за да следвате точно моя код.)

Отне ми цели 4 дни работа, но сега всеки светодиод (минус 3-4, който прецаках) може да се включва индивидуално!

тогава трябва само да свържете някои бутони и престо! Вашата собствена Pixel Art живопис!

Този човек също направи пример за окабеляване, наистина полезен

Стъпка 5: Мръсни. Абсолютно злорадство

Ако сте начинаещ (като мен) и сте успели да направите нещо дори подобно на това плъхово гнездо от проводници и то се включва; злорадство. Справихте се наистина добре!

Ако имате въпроси/коментари, просто ги оставете по -долу, ще се опитам да помогна, ако мога!

Препоръчано: