В този проект ще проектираме 8x8 LED матричен дисплей, за това ще свържем 8x8 LED матричен модул с Arduino Uno. 8x8 LED матрица съдържа 64 светодиода (светоизлъчващи диоди), които са подредени под формата на матрица, откъдето идва и името LED матрица.
Тези матрици могат да бъдат направени чрез кръгове на 64 светодиода, но този процес отнема много време. Сега на ден те се предлагат в компактни форми, както е показано на изображението по-долу. Тези компактни модули се предлагат в различни размери и много цветове. Цената на модула е същата като 64 светодиода, така че за любителите това е най-лесно да се работи.
Голата LED матрица има 16 пинови изхода с 8 общи положителни и още 8 общи отрицателни. За да свържем тази матрица директно към UNO, трябва да отделим 16 пина на UNO. Тъй като изходните щифтове са ниски за UNO, не можем да спестим 16 ПИНОВЕ. Така че трябва да свържем тази матрица с драйвер чип. Този драйвер чип заедно с матрицата се предлага като комплект, който е показан на фигурата по-долу.
Този модул ще бъде свързан с Arduino за показване на азбуки, следователно и матричния дисплей. Преди всичко за свързване на LED матрица с Arduino, трябва да изтеглим библиотека, специално проектирана за LED MATRIX. Тази библиотека ще бъде достъпна на:
След като изтеглите Zip файла, извлечете съдържанието в папката ARDUINO. (Отидете на локалния диск, където е инсталиран софтуер ARDUINO NIGHTLY, отворете папката, потърсете папка с име „библиотека“, извлечете съдържанието на zip файл в тази папка, рестартирайте програмата, която вече ще можете да използвате за матричен интерфейс)
Необходими компоненти
Хардуер: Arduino Uno, захранване (5v), кондензатор 100 uF (свързан през захранване)
Софтуер: Arduino Nightly
Електрическа схема и обяснение
Връзките, които се осъществяват между Arduino Uno и LED матричен модул, са показани в таблицата по-долу.
ПИН2 ------------------ ЗАВАРЯВАНЕ или ЧИПСЕЛКИ на LED модул
ПИН3 ------------------ ЧАСОВНИК на LED модула
ПИН4 ------------------ ДАННИ на LED модула
+ 5V ------------------ VCC на LED модул
GND ------------------ GND на LED модул
В диаграмата верига на дисплей 8 * 8 LED матрица е показано в по-долу фигура.
Сега за да използваме специалните фючърси, наречени чрез инсталиране на нова библиотека, трябва да установим няколко команди в програмата и са посочени по-долу.
#include "LedControlMS.h" #define NBR_MTX 1 LedControl lc = LedControl (4,3,2, NBR_MTX); lc.writeString (0, "CIRCUITDIGEST"); lc.clearAll (); |
Първо трябва да извикаме заглавния файл за свързване на LED матрица с Arduino Uno. Това е ”#include“ LedControlMS.h ””, този заглавен файл извиква библиотеката специални функции.
Ние разполагаме с функция с тези модули, ние можем да свързваме множество модули последователно и да ги програмираме заедно като един дисплей. Тази функция е полезна, когато се нуждаем от дисплей, който може да показва едновременно няколко символа. Затова трябва да кажем на контролера колко дисплея свързваме.
В този модул има основно три щифта; потокът от данни от UNO към модула се извършва с тези три щифта. Пиновете са DATAIN (ПИН за получаване на данни), ЧАСОВНИК (ПИН за часовник) и CHIPSELECT (ПИН за получаване на команди).
Сега трябва да кажем на ООН къде свързваме тези щифтове. Това става чрез команда „LedControl lc = LedControl (4,3,2, NBR_MTX); ”. “Lc.writeString (0," CIRCUITDIGEST ");”, тази команда се използва за указване на UNO кои символи трябва да бъдат показани на LED матрицата. С горното на дисплея се изписва „CIRCUITDIGEST“, с всеки символ по веднъж.
Трябва да изчистим паметта на дисплейния чип, преди да изпратим каквито и да било други данни, това се прави с команда ”lc.clearAll ();".
По този начин можем лесно да свържем 8x8 LED матрица с Arduino Uno.