Било која боја састоји се од три боје: црвене, зелене и плаве, помоћу једноставног РГБ ЛЕД-а можете генерисати било коју боју. Али ограничење РГБ ЛЕД-а је то што у себи има три одвојена ЛЕД-а и потребна су му три пина било ког микроконтролера за рад са једном РГБ ЛЕД-ом. Дакле, није могуће повезати стотине ЛЕД диода са једним микроконтролером.
Да би превазишао овај проблем, Адафруит је створио НеоПикел ЛЕД траку. Потребна су само три пина за погон неколико РГБ НеоПикел ЛЕД диода. Два пина су за напајање и масу, а један за за улаз података (ДИ). Прикључак Дата ИН користи се за адресирање и контролу различитих ЛЕД диода у траци са њиховом бојом, осветљеношћу итд. Али потребан је микроконтролер за покретање НеоПикелс-а. Ардуино се врло често користи са НеоПикел-ом, па ћемо данас научити да повезујемо НеоПикел ЛЕД-ове са Ардуином. О НеоПикелсу можете сазнати више на АдаФруит.
Овде у овом пројекту контролишемо НеоПикел ЛЕД помоћу Ардуино и ТФТ ЛЦД екрана осетљивог на додир. Направили смо 7 тастера осетљивих на додир у различитим бојама на 2,4-инчном ТФТ ЛЦД-у и када додирнемо дугме одређене боје на ЛЦД-у, НеоПикел ЛЕД трака светли истом бојом тог дугмета. Овде смо користили НеоПикел Дигитал РГБ ЛЕД траку од 30 ЛЕД.
НеоПикел РГБ ЛЕД може бити осветљен у било којој боји, тако да можемо додати још дугмади на ЛЦД екрану да ЛЕД светли у више боја при куцању на та дугмад. Други лепи ефекти и обрасци такође се могу додати помоћу кодирања. Можете да направите потпуни систем украшавања којим управља Ардуино помоћу НЕО Пикел ЛЕД- а и можете да контролишете овај систем ЛЦД-ом који лежи у вашој близини.
Потребне компоненте:
- Ардуино Мега или било који други Ардуино модел
- 2,4-инчни ТФТ ЛЦД штит са контролором СПФД5408
- НеоПикел РГБ ЛЕД трака
- Повезивање жица
- УСБ кабл или адаптер од 12 В 1А
Цирцуит Цоннецтионс:
Да бисте повезали НеоПикелс Стрип са Ардуино Мега, једноставно спојите Ардуино 5В пин на НеоПикел-ов 5В пин и Мега-ГНД на НеоПикел-ов ГНД, а затим повежите НеоПикел ДИ пин (подаци у) на Дигитални пин број 36 Ардуино Мега-е. Пажљиво поставите ТФТ ЛЦД додирни штит преко Ардуина тако да се ГНД МЕГА налази испод ГНД ЛЦД-а, а 5В пин Ардуино-а повезује се са 5В пин-ом ЛЦД-а.
Пазите да не измените ГНД и 5В пин НеоПикел ЛЕД траке док је повезујете са Ардуином, у супротном ће оштетити НеоПикел ЛЕД траку. Такође имајте на уму да смо овде користили Ардуино Мега, али можете користити било који други Ардуино модел.
Конекције за Ардуино до НеоПикел РГБ ЛЕД траке:
Ардуино Пинс |
НеоПикел Стрип'с Пинс |
5в |
5в |
ГНД |
ГНД |
Дигитални пин бр. 36 |
ДИ (подаци у) |
Објашњење:
Рад са НеоПикел ЛЕД са Ардуином је врло једноставан. Само додирните додирно дугме било које боје на ЛЦД-у на којем желите да осветлите НеоПикел ЛЕД траку. ЛЕД ће светлити у складу са том бојом. Код је написан на такав начин да можете бескрајно понављати овај задатак без потребе да ресетујете Ардуино Мега. Цоде и Демо Видео можете погледати на крају овог чланка.
Када додирнете било које дугме на ЛЦД-у, подаци се шаљу Ардуину, а Ардуино даље шаље упутства НеоПикел Стрип-у да се у складу с тим осветли. На пример, НеоПикел ЛЕД трака светли зеленом бојом када додирнемо зелено дугме на ЛЦД екрану, а ЛЕД трака светли црвеном бојом када притиснемо црвено дугме и тако даље.
Објашњење програмирања:
За повезивање ТФТ ЛЦД-а са Ардуином користили смо неке библиотеке. Све библиотеке долазе у једној рар датотеци и могу се преузети са ове везе. Кликните на „Клонирај или преузми“ и „Преузми ЗИП“ и додајте у фасциклу Ардуино библиотеке. Ова библиотека је потребна за правилно функционисање ТФТ ЛЦД-а.
#инцлуде
Требали бисте тестирати свој ТФТ ЛЦД спаљивањем Ардуина са примерима кодова датим у библиотеци и проверити раде ли кодови исправно. Прво проверите графички тест, затим калибришите тест и на крају тест боја. Ако откријете да све функције функционишу у реду, почните са кодом датим у овом упутству.
Такође, за правилно функционисање НеоПикел РГБ ЛЕД траке, биће вам потребна још једна библиотека коју можете преузети овде.
#инцлуде
Као што је раније описано, Дигитални пин 36 МЕГА повезан је са ДИ пин НеоПикел ЛЕД траке као што је приказано у доњем коду. Такође је број ЛЕД диода у траци 30, како је написано у коду:
#дефине ПИН 36 #дефине НУМ_ЛЕДС 30
Боје приказа ЛЦД тастера означене су неким кодовима. Ове кодове можете променити у складу са ЛЦД екраном.
#дефине БЛАЦК 0к0000 #дефине ИЕЛЛОВ 0к001Ф #дефине ГРЕЕН 0кФ800 #дефине РЕД 0к07Е0 #дефине ЦИАН 0к07ФФ #дефине МАГЕНТА 0кФ81Ф #дефине БЛУЕ 0кФФЕ0 #дефине ВХИТЕ 0кФФФФ
Неки параметри за дугмад, попут величине и положаја, дефинисани су у коду:
уинт16_т ширина = 0; уинт16_т висина = 0; уинт16_т к = 40; уинт16_т и = висина - 20; уинт16_т в = 75; уинт16_т х = 20;
Параметар х служи за подешавање величине дугмета на ЛЦД-у. Ако га направите 40, величина дугмета ће се удвостручити. и параметар је и координата ЛЦД-а.
Додирни тастери означени су бројевима као што је приказано у коду:
#дефине БУТТОНС 9 #дефине БУТТОН_Ред 0 #дефине БУТТОН_ДаркРед 1 #дефине БУТТОН_РЕД 2 #дефине БУТТОН_ДаркГреен 3 #дефине БУТТОН_ДеепРед 4 #дефине БУТТОН_Блуе 5 #дефине БУТТОН_делигхтБИГХТБУТТОН_Дефине БУТТОН_Дефине БУТТОН_Дефине БОВТОН_Дефине БИГХТТОНЕ
Неке функције се користе за емитовање боје из НеоПикел-а попут:
воид ЕмитЦиан (); воид ЕмитВхите (); воид ЕмитГреен (); воид ЕмитИеллов (); воид ЕмитПинк (); воид ЕмитБлацк ();
Да бисте пронашли дигиталне РГБ вредности које се уносе за дату боју, можете следити ову везу. Само унесите боју у којој желите да ваша НеоПикел трака светли, пронађите РГБ вредности за ту боју и ставите горе наведене функције.
функција воид инитиализеБуттонс () користи се за давање текста и боје тастерима, као и за њихово постављање на потребно место на ЛЦД-у.
воид инитиализеБуттонс () {уинт16_т к = 40; уинт16_т и = висина - 20; уинт16_т в = 75; уинт16_т х = 40; уинт8_т размак_к = 5………………..
воид сховКалибрација () се користи за цртање тастера на ЛЦД-у.
воид сховЦалибратион () {тфт.сетЦурсор (40, 0); за (уинт8_т и = 0; и <8; и ++) {буттонс.дравБуттон (); }}
Даље је доле дат пуни Ардуино код за осветљење НеоПикел ЛЕД траке у жељеној боји. Код је помало дугачак, али једноставан, можете га лако разумети.