Мазмұны:

42 RGB LED пиксельдік көркем кескіндеме: 5 қадам
42 RGB LED пиксельдік көркем кескіндеме: 5 қадам

Бейне: 42 RGB LED пиксельдік көркем кескіндеме: 5 қадам

Бейне: 42 RGB LED пиксельдік көркем кескіндеме: 5 қадам
Бейне: DMX512 DC12V LED Pixel light Hight Brightness LED Point Light Source Full Color Control Outdoor Adve 2024, Шілде
Anonim
42 RGB светодиодты пиксельдік көркем кескіндеме
42 RGB светодиодты пиксельдік көркем кескіндеме

Эй, Мектептегі «Егер бұл солай болса» деп аталатын тапсырма үшін мен Arduino Uno стартеркитін қолдана отырып интерактивті // бірдеңе // жасауым керек болды (және басқалары өздерін сатып алғысы келді). Мен өнер мен технологияны зерттеп жүргендіктен, мен олардың екеуін (өнер мен технология) біріктіргім келді. Мен Arduino -ға сәйкес келетін RGB светодиодтарынан тұратын кескіндеме жасаймын деп ойладым және ойыншыға/суретшіге осы RGB светодиодымен қолмен айналуға және түс таңдауға мүмкіндік беремін деп ойладым. Осылайша олар өздерінің «пиксельдік өнерін» жасай алады!

1 -қадам: Кейбір мәліметтер мен теория

Жарайды, бұтаның айналасында ұрмайық. Егер сіз бұл жобаны жүзеге асырғыңыз келсе: қиын. Маған не істеу керектігін түсіну/үйрену үшін, тіпті одан да көп нәрсені жасау үшін көп сағат қажет болды, бірақ егер сіз шынымен өте кішкентай «суреттер» жасай алатын сыммен толтырылған қорапты қаласаңыз, мен сізге қалай үйретемін.

Сонымен, бірінші кезекте. Біз Arduino -да мүмкіндігінше көп жарықдиодты/RGB жарықдиодты алғымыз келеді. Қанша көп (RGB) светодиодтар қоссаңыз, сіз «кескіндеме» жасай аласыз (10х10 пиксель сізге 2х2 оң жақтан гөрі көбірек орын береді). Менің ойымша, сіздің 13 цифрлық түйреуіштеріңізде (RGB) көптеген светодиоды алудың басқа әдістері бар (ауысым регистрі сияқты), бірақ мен «Charlieplexing» әдісін қолдандым. Мен бұл ұғымды түсінуге көмектесетін нұсқаулыққа сілтеме жасаймын (олар шынымен жақсы түсіндіреді), бірақ мен сізге мұнда жылдам нұсқасын беремін. Шарлиплексинг келесі түрде жүреді:

Сіз 1 -ші түйреуіш пен 2 -ші түйреуіштің арасына жарықдиодты қойдыңыз, егер сіз 1 -істікті ЖОҚ -қа, ал 2 -НІ ТӨМЕН күйіне қойсаңыз, шеңбер тегіс жұмыс істейді және жарық диоды қосылады. Негіздері. Енді сіз басқа жарықдиодты қосасыз, бірақ айналдыра айналдыңыз. Ұзын соңы 2 -де, қысқа ұшы 1 -істікте. Енді сіз 2 -ші түйреуішті ЖОҒАРЫ -1 -ге, ал -1 -ші түйреуішті төменге бұрсаңыз, 2 -ші жарық диоды қосылады, ал сіздің біріншіңіз сөнеді, себебі ағын дұрыс болмайды. Енді сіз 2 түйреуішке 2 жарықдиодты қоса аласыз. Егер біз 3 -ші түйреуішті алсақ, сіз бұл трюкті 1 мен 2, 1 мен 3 және 2 мен 3 арасында жасай аласыз. Бұл 6 жарық диоды. Бұл жалғасуда, 5 түйреуіш бізге (2 + 4 + 6 + 8) 20 жарықдиодты береді. Барлық 13 цифрлық түйреуіштерді пайдалану бізге 156 опцияны ұсынады. Бұл 156 жарықдиодты жеке қосуға және өшіруге болады.

(жарайды, сіз ойлайтындар үшін. Иә, егер сізде көп нәрсені бір уақытта қосу мүмкін болмаса, бірақ алаңдамаңыз, arduino сіздің жарық диодтарыңыздың арасында тез ауыса алады, адам көзі жыпылықтауды көре алмайды)

(Толығырақ түсініктеме, суреттермен)

Жарайды, сымға келгенде көп күш жұмсау керек (мен бұл туралы кейінірек тоқталатын боламын), біз жарықдиодты шамдардың торын жасай аламыз, бірақ оған мойынсұнуға рұқсат етіңіз. Жарық диодтары өте скучно. Қалай 2 түсті ғана сурет жасауға болады? Менің ойымша, сіз жасай аласыз, бірақ егер сізде көбірек түстер болса, оның салқыны бар ма? дұрыс Сонымен, біз RGB светодиодтарына жүгінеміз!

RGB светодиодтары - бұл негізінен 3 светодиоды. Олар ортақ катодты немесе анодты (қуат кіретін немесе өшетін жерде) бөліседі, ал қалған 3 «аяғы» - сіздің қызыл жасыл және көк жарықдиодты шамдар. Осыны есте сақтай отырып, иә, біз оларды да шарлеплекс жасай аламыз! Әр RGB светодиоды 3 тұрақты жарықдиодты құрайды. Осылайша сіз олардың барлығын жеке -жеке қосуға және өшіруге болады және таңдау үшін керемет түстер жасай аласыз! Жалғыз минус - бұл жағдайды қиындатады, себебі сіз бастапқыда қажет болғаннан 3 есе көп жарықдиодты картаға/жоспарлауға және сымға қосуға тура келеді.

Мен 13 түйреуіште 42 RGB светодиодына бардым. Бұл 126 кәдімгі жарық диоды ….. бұл өте аз. Мен мұны қалай істегенімді айтайын.

2 -қадам: Жоспарлау

Жоспарлау
Жоспарлау

Ия, сіз не істеп жатқаныңыздың теориясын түсінгеннен кейін бұл қадам өте оңай. Сіз негізінен барлық светодиодтарды жазасыз және қай түйреуішке RGB светодиодының қай аяғына бару керектігін жоспарлайсыз, осылайша сіз барлық опцияларды жабасыз. Мен өзімнің жоспарлаудың суретін тіркедім, оны да қолданыңыз (мен барлық опцияларды қолданған жоқпын, себебі мен тек 156 -дан 126 қосылымға мұқтаж болдым. Мен оны осылай құрылымдадым, себебі бұл құрылысты біршама жұмсақ етеді.).

Мұны қағазға түсіру маңызды, оны кейін кодтау қажет болады. Егер сіз мұны жазбасаңыз және 1 қосылымды бұзсаңыз, код сол жарықдиодты үшін жұмыс істемейді.

3 -қадам: Кодекс

Жарайды, егер сізде 2 RGB светодиодын 2 түйреуішке қалай жалғау туралы ойыңыз болса: Алға! Кодты тексеру өте жақсы, бірақ мен сенемін, ол жұмыс істейді! Мен мүмкіндігінше «таза» кодтауды жасауға тырыстым (сіз мұны коммутаторлардың қосқыштарымен басқара аласыз, бірақ бұл сіздің x42 кодыңызды жазып алуға болатын қорқынышты мәселе, бұл маған жақсы болуы мүмкін екенін түсінуге мүмкіндік берді) жол).

Кодтың мақсаты төмендегідей. Сіз LED1 -ден бастайсыз. 1 түймесі келесі жарық диодына өтуге мүмкіндік береді, бірақ алдыңғы жарық диоды қосулы қалады. Button2 алдыңғы жарық диодына оралуға мүмкіндік береді, 3 -түйме түсін өзгертуге мүмкіндік береді. Ағымдағы таңдалған жарық диоды жыпылықтайды, осылайша сіз қай жарықдиодты «таңдалғанын» көре аласыз.

Мұны істеу үшін мен массивтермен жұмыс жасадым. Мен жарықдиодты класс жасадым, ол белгілі бір түс жасау үшін қандай түйреуіш қажет екенін білу үшін жоспарлау кезеңінде сіз жазған ақпаратты пайдаланады. Мен олардың барлығын массивке қойдым және мен arduino циклін LEDarray арқылы өтуге рұқсат етемін, ал қай түс қосылғанын анықтау үшін colorarray (түс 7 түс таңдауға мүмкіндік беретін қосқыш арқылы анықталады). Жыпылықтау if-операторымен реттеледі.

Код бекітілген, жүктеп алуға және пайдалануға болады. Егер түсінбейтін нәрсе болса, түсініктеме бөлімі сұрақтарға ашық, бірақ сіз негізінен пастаны көшіре аласыз!

4 -қадам: Ең қиын бөлім

Ең қиын бөлігі
Ең қиын бөлігі
Ең қиын бөлігі
Ең қиын бөлігі

Енді сізде идея бар, жұмыс коды …. тек нақты өнім емес. Бұл жобаның ең қорқынышты бөлігі, сондықтан мен бұған немқұрайлы қарамауға кеңес берер едім. Барлығы бірдей түйреуішпен аяқталатын әр түрлі аяқтар есіңізде ме? Иә … сіз светодиодтар торын жасауыңыз керек, содан кейін әр аяқты басқа түйреуішке жалғау керек, содан кейін оларды осы түйреуішке жалғаңыз. Бұл ең қиын бөлігі және мен 100% мінсіз шықпадым, егер сіз дәнекерлеуде жақсы болсаңыз, мүмкіндігіңіз болуы мүмкін.

Мен бір уақытта RGB светодиодтарын қойдым және әр аяғына мыс сымын жалғадым (қаптамасы бар/қаптамасы бар мыс сымды ұсынамын. Менікі тым қалың болды және бұл маған көп қайғы әкелді). Екі аяғы мен сымдары бір -біріне тиіп кетпеуін қадағалаңыз! содан кейін бір түйреуішке өтуі қажет барлық сымдарды «жай» қосыңыз, содан кейін оларды резисторға жалғаңыз және оны осы істікке қосыңыз. Мұны істеудің «қауіпсіз» әдісі бар екеніне сенімдімін, бірақ мен сенімдімін: егер сіздің тақтаңыз өте үлкен!

(Мен бұл қадамды жеңілдететін сызба қостым. Ол сізге менің кодты дәл орындау үшін қай түйреуішке бару керектігін айтады.)

Маған 4 күндік жұмыс қажет болды, бірақ қазір әр жарық диодты (мен бұрап алған минус 3-4) жеке қосуға болады!

онда сізге тек кейбір түймелер мен престі қосу керек! Сіздің Pixel Art картинаңыз!

Бұл адам сымдардың үлгісін жасады, бұл өте пайдалы

5 -қадам: шалбар. Мүлдем Глоат

Егер сіз бастаушы болсаңыз (мен сияқты) және сіз осы егеуқұйрықтардың ұясына ұқсас нәрсе жасай алсаңыз және ол қосылады; күңгірт. Сіз нағыз жақсылық жасадыңыз!

Егер сізде сұрақтар/пікірлер болса, оларды төменде қалдырыңыз, мен қолымнан келсе көмектесуге тырысамын!

Ұсынылған: