Как подключить светодиод к ардуино

Как подключить RGB светодиод к Arduino

как подключить светодиод к ардуино

RGB светодиод – это три светодиода разных цветов (Red – красный, Green – зелёный, Blue – синий), заключённые в одном корпусе. Давайте посмотрим, как подключить RGB светодиод к Arduino.

Нам понадобится:

1 Отличие RGB светодиодов с общим анодом и с общим катодом

RGB светодиоды бывают двух типов: с общим анодом («плюсом») и общим катодом («минусом») . На рисунке приведены принципиальные схемы эти двух типов светодиодов.

Длинная ножка светодиода – это всегда общий вывод питания. Отдельно расположен вывод красного светодиода (R), зелёный (G) и синий (B) располагаются по другую сторону от общего вывода, как показано на рисунке.

В данной статье мы рассмотрим подключение RGB светодиода как с общим анодом, так и с общим катодом.

RGB светодиоды с общим анодом и с общим катодом

2 Подключение RGB светодиода с общим анодомк Arduino

Схема подключения RGB светодиода с общим анодом показана на рисунке. Анод подключаем к «+5 В» на плате Arduino, три другие вывода – к произвольным цифровым пинам.

Схема подключения RGB светодиода с общим анодом к Arduino

Обратите внимание, что мы подключаем каждый из светодиодов через свой резистор, а не используем один общий. Желательно делать именно так, потому что каждый из светодиодов имеет свой КПД. И если подключить их все через один резистор, светодиоды будут светиться с разной яркостью.

Для быстрого расчёта номинала резистора, подходящего к выбранному вами светодиоду, можно воспользоваться онлайн-калькулятором расчёта светодиодов.

3Управление RGB светодиодами с помощью Arduino

Перепишем классический скетч blink. Будем включать и отключать по очереди каждый из трёх цветов. Обратите внимание, что светодиод загорается, когда мы подаём низкий уровень (LOW) на соответствующий вывод Arduino.

// задаём номера выводов: const int pinR = 12; const int pinG = 10; const int pinB = 9; void setup() { // задаём назначение выводов: pinMode(pinR, OUTPUT); pinMode(pinG, OUTPUT); pinMode(pinB, OUTPUT); }void loop() { digitalWrite(pinR, LOW); //зажигаем канал Red delay(100); digitalWrite(pinR, HIGH); //выключаем Red delay(200); digitalWrite(pinG, LOW); //зажигаем канал Green delay(100); digitalWrite(pinG, HIGH); //выключаем Green delay(200); digitalWrite(pinB, LOW); //зажигаем канал Blue delay(100); digitalWrite(pinB, HIGH); //выключаем Blue delay(200); }

4 Собрать схемуна макетной плате

Посмотрим в действии на мигание RGB светодиодом. Светодиод по очереди зажигается красным, зелёным и синим цветами. Каждый цвет горит 0,1 секунду, а затем гаснет на 0,2 секунды, и включается следующий. Можно зажигать каждый канал отдельно, можно все одновременно, тогда цвет свечения будет меняться.

RGB светодиод подключён к Arduino. Схема собрана на макетной плате

5Подключение RGB светодиода с общим катодомк Arduino

Если вы используете RGB светодиод с общим катодом, то подключите длинный вывод светодиода к GND платы Arduino, а каналы R, G и B – к цифровым портам Arduino. При этом нужно помнить, что светодиоды загораются при подаче на каналы R, G, B высокого уровня (HIGH), в отличие от светодиода с общим анодом.

Схема подключения RGB светодиода с общим катодом к Arduino

Если не менять вышеприведённый скетч, то каждый цвет светодиода в этом случае будет гореть 0,2 секунды, а пауза между ними составит 0,1 секунду.

Полезный совет

Если вы хотите управлять яркостью светодиода, то подключайте RGB светодиод к цифровым выводам Arduino, которые имеют функцию ШИМ (PWM). Такие выводы на плате Arduino обычно помечены знаком тильда (волнистая линия), звёздочкой или обведены кружочками.

Источник: https://soltau.ru/index.php/arduino/item/347-kak-podklyuchit-rgb-svetodiod-k-arduino

Урок 1 — Подключение кнопки и светодиода к плате Arduino

как подключить светодиод к ардуино

В блоке уроков Светодиоды, Резисторы, Arduino . Мы научились управлять светодиодом с помощью платы Arduino. Но как сделать включение светодиода при нажатии кнопки?

В данном уроке мы рассмотрим самый простой способ управления светодиодом.

Для урока нам понадобиться:

В уроке Мигаем светодиодом на Arduino мы уже рассмотрели программу и схему подключения светодиода. Добавим к ней кнопку и у нас получиться:

Скетч получится довольно простой.

int led_pin=3; // пин подключения int button_pin = 4; // пин кнопки void setup() { pinMode(led_pin, OUTPUT); // Инициализируем цифровой вход/выход в режиме выхода. pinMode(button_pin, INPUT); // Инициализируем цифровой вход/выход в режиме входа. } void loop() { if (digitalRead(button_pin) == HIGH) { // Если кнопка нажата digitalWrite(led_pin, HIGH);// зажигаем светодиод } else { //Иначе digitalWrite(led_pin, LOW);// выключаем светодиод } }

Данный код практически не применим в практике, но нам для примера будет достаточно.

pinMode(button_pin, INPUT); // Инициализируем цифровой вход/выход в режиме входа.

В данной строчке пин button сконфигурирован как вход, для дальнейшего приема на него сигнала.

if (digitalRead(button_pin) == HIGH) { // Если кнопка нажата

Считываем цифровое значение с pin button. Если получаем 5В, это значит HIGH и 0В LOW.

Конструкция if..else предоставляет больший контроль над процессом выполнения кода, чем базовый оператор if, позволяя осуществлять несколько проверок, объединенных вместе.

if (digitalRead(button_pin) == HIGH) //Если на пин button приходит сигнал HIGH то выполняем действие А { // действие A } else //Иначе. В нашем случае если на пин button приходит LOW, выполняем действие В { // действие B }

Если вам что то не понятно посмотрите уроки в блоке: Светодиоды, Резисторы, Arduino

Если у вас чего то нет для выполнения данного урока, Вы можете посмотреть в каталоге. Там собранные комплектующими от проверенных продавцов по самым низким ценам

Источник: https://portal-pk.ru/news/48-urok-1---podklyuchenie-knopki-i-svetodioda-k-plate-arduino.html

Адресная светодиодная лента WS2812 и Arduino

как подключить светодиод к ардуино

Адресная светодиодная лента – это украшение любого проекта Arduino. С ее помощью вы можете создавать светомузыку, умную подсветку для телевизора, бегущие строки и другие проекты, в которых требуется отобразить информацию на широком экране.

Благодаря встроенным контроллерам, вы можете управлять каждым из светодиодов ленты в отдельности, управляя ими как пикселями на экране.

В этой статье мы разберемся, как работает адресная светодиодная лента, как ее подключить к Arduino, какие могут возникнуть проблемы и какие библиотеки лучше использовать для управления.

Адресные светодиодные ленты

Светодиодная лента — это набор связанных светодиодов, на которые может одновременно подаваться напряжение питания. Обычные ленты хорошо всем знакомы, они используются сегодня повсюду.

В адресной светодиодной ленте также используются светодиоды, но светоизлучающий диод может управляться отдельно и независимо от других.

Таким образом, адресные ленты можно использовать для более интеллектуального управления световым потоком на отдельных участках ленты, включая или выключая подсветку в нужное время и в нужном месте.

Сегодня наибольшей популярностью пользуются разноцветные светодиодные ленты RGB-формата, позволяющие получать множество цветов.

 Благодаря конструкции есть возможность управления цветом каждого светодиода, что позволяет создавать оригинальные световые эффекты.

Главное отличие адресной светодиодной ленты от обычной RGB ленты – это наличие специальных контроллеров (конструктивно выполненных в виде микросхем) возле каждого светодиода, что и дает возможность индивидуальной адресации и регулирования каждого оттенка.

Как правило, лента содержит 3-4 контакта для подключения. Два вывода используются для питания – 5 Вольт и земля, остальные один или два – логический, для управления свечением.
Управление умной лентой производится по цифровому протоколу. Это значит, что без управляющего контроллера управлять устройством нельзя. Кстати, при прикосновении к цифровому входу может загореться несколько диодов – это связано с тем, что появляются помехи, которые контроллер принимает за команды.

Самыми популярными адресными светодиодными лентами являются устройства на чипах WS2812B и WS2811. В первом случае чип находится прямо внутри светодиода, то есть один прибор управляет свечением одного излучающего диода. Питание ленты составляет 5 вольт. Во втором случае чип помещается отдельно, и к нему подключаются 3 диода. Мощность – 12 вольт.

Как работает адресная светодиодная лента

Принцип работы ленты следующий. Она поделена на сегменты, в каждом из которых находятся светодиод и конденсатор. Они все подключены параллельно, а данные передаются последовательно от одного сегмента к другому. Управление осуществляется контроллером, в котором прописывается программа функционирования. Управлять лентой можно через платформу Ардуино.

Маркировка адресной ленты:

  • Black PCB / White PCB – цвета подложки
  • 1м/5 м – длина адресной ленты
  • 30/60/74 и т.д. – сколько светодиодов приходится на 1 метр ленты
  • IP30, IP65, IP67 – степень влаго- и пылезащищенности ленты.

Адресные светодиодные ленты используются для сборки полноценных модулей, в конструировании ламп с управлением soft lights, для декоративной подсветки, в построении диодных экранов уличной рекламы.

Лента на базе WS2812B

Лента на чипе WS2812B является более совершенной, чем ее предшественник WS2811. ШИМ драйвер в адресной ленте компактен, и размещается прямо в корпусе светоизлучающего диода.

Основные преимущества ленты на основе WS2812:

  • компактные размеры
  • легкость управления
  • управление осуществляется всего по одной линии + провода питания
  • количество включенных последовательно светодиодов не ограничено
  • невысокая стоимость – покупка отдельно трех светодиодов и драйвера к ним выйдет значительно дороже

Лента оснащена четырьмя выходами:

  • питание
  • выход передачи данных
  • общий контакт
  • вход передачи данных.

Максимальный ток одного адресного светодиода равняется 60 миллиамперам. Рабочие температуры лежат в пределах от -25 до +80 градусов. Напряжение питания составляет 5 В +-0,5.

ШИМ драйверы ленты 8-мибитные – для каждого цвета возможно 256 градация яркости. Для установки яркости нужно 3 байта информации – по 8 бит с каждого светодиода. Информация передается по однолинейному протоколу с фиксированной скоростью.

Нули и единицы кодируются высоким и низким уровнем сигнала по линии.

Пример подключения к Arduino

Любая адресная светодиодная лента имеет начало и конец, которые важно не перепутать во время сборки. На них есть специальные обозначающие стрелки, которые указывают направление сигнала.

Лента WS2812B подключается к Ардуино следующим образом:

Схема подключения WS2812 к Arduino

Выходы питания с ленты 5В и земля соединяются с соответствующими контактами на микроконтроллере Ардуино. При подключении отрезка с более чем 13 светодиодами потребуется выносной блок питания.

Земля и минус блока питания должны быть соединены друг с другом. DIN можно подключить к любому цифровому порту на плате Arduino. Он используется для получения данных с контроллера.

Цифровой вход ленты идет на вход контроллера, поэтому между ними нужен токоограничивающий резистор номиналом 100-500 Ом. С его использованием нагрузка на пин будет ниже.

На другом конце ленты также есть 3 контакта, к которым можно подключить отрезки различной длины.

Источник: https://arduinka.pro/blog/podklyuchenie/adresnaya-svetodiodnaya-lenta-ws2812-i-arduino/

Урок 1. Мигающий светодиод на Arduino

Добрый вечер юные познаватели микроконтроллера Arduino, сегодня мы с вами начнем изучать основы и азы Arduino и поймем принцип его работы. Сегодняшний урок посвящен такому элементу как светодиод и работы c микроконтроллером Arduino. Попросту говоря,

Светодиод — это полупроводниковый прибор, трансформирующий электроток в видимое свечение.

И на основе свечения светодиода мы будем работать и рассматривать основу программирования Arduino. Перейдем непосредственно к практике Для начала нам нужно приготовить необходимый набор предметов для работы!

Для начала работы нам понадобятся такие компоненты

  • плата Arduino
  • Breadboard (макетная плата для удобного подключения приборов к Arduino)
  • Провода
  • светодиод
  • резистор

Также вам потребуется программа Arduino IDE, которую можно скачать с официального сайта Arduino.

Данные комплектующие можно приобрести на официальном сайте или в интернет-магазине AliExpress или Амперка.

Спросите вы, что такое Breadboard ?

Breadboard— макетная (монтажная) беспаечная плата. Breadboard представляет из себя сетку из гнезд, которые обычно соединяются так:

Далее, когда мы приготовили все компоненты к работе и установили программу на ПК , нам следует правильно их подключить . Подключать нужно очень внимательно, чтобы все компоненты остались целыми и невредимыми.

Не забудьте проверить «+» и «-» у светодиода. Минус у светодиода можно отличить двумя способами :

  • У «минуса» на светодиоде по стандарту ножка вывода длиннее чем у плюса.
  • Если вы внимательно всмотритесь в светодиод, то можете увидеть своеобразный флажок, так вот, где флажок там и «минус» светодиода.

После правильного подключения перейдем к этапу программирования.

/*
Зажигаем светодиод на одну секунду, затем выключаем его на
одну секунду в цикле.

*/
int led = 8;
/*объявление переменной целого типа, содержащей номер порта к которому мы подключили провод */
void setup() {
/* Инициализируем объявление используемого порта вход/выход в режиме выхода.

*/
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH); // зажигаем светодиод
delay(1000); // ждем секунду
digitalWrite(led, LOW); // выключаем светодиод
delay(1000); // ждем секунду
}

Код нужно всего лишь скопировать и вставить, тут и ребенок справится. Наша цель понять и разобраться в том, что мы внесли в Arduino.

Перейдем к пояснению нашего скетча (кода)

С начала в нашем скетче мы объявили переменную int led = 8; . Мы таким образом заявили, что хотим иметь ячейку памяти, к которой будем обращаться по имени led и изначально, при старте Arduino, в ней должно лежать значение 8 пина. Перед именем переменной в определении указывается тип данных для этой переменной. В нашем случае — это int , что означает «целое число» (int — сокращение от английского «integer»: целочисленный).

Процедура setup выполняется один раз при запуске микроконтроллера. Обычно она используется для конфигурации портов микроконтроллера и других настроек. В нашем случае мы указали, что наш светодиод на 8 выходе . «pinMode(led, OUTPUT);» Хотелось бы сказать, что Arduino выполняет с начала действие setup , а далее выполняет действие другой процедуры, про которую мы сейчас поговорим.

После выполнения setup запускается процедура loop, которая выполняется в бесконечном цикле . Именно этим мы пользуемся в данном примере, чтобы маячок мигал постоянно.

Процедуры setup и loop должны присутствовать в любой программе (скетче), даже если вам не нужно ничего выполнять в них — пусть они будут пустые, просто не пишите ничего между фигурными скобками. Запомните, что каждой открывающей фигурной скобке { всегда соответствует закрывающая } .

Они обозначают границы некого логически завершенного фрагмента кода. Следите за вложенностью фигурных скобок. Для этого удобно после каждой открывающей скобки увеличивать отступ на каждой новой строке на один символ табуляции. Обращайте внимание на ; в концах строк. Не стирайте их там, где они есть, и не добавляйте лишних.

Вскоре вы будете понимать, где они нужны, а где нет.

Функция digitalWrite(pin, value) не возвращает никакого значения и принимает два параметра: pin — номер цифрового порта, на который мы отправляем сигнал value — значение, которое мы отправляем на порт.

Для цифровых портов значением может быть HIGH (высокое, единица) или LOW (низкое, ноль) Если в качестве второго параметра вы передадите функции digitalWrite значение, отличное от HIGH , LOW, 1 или 0, компилятор может не выдать ошибку, но считать, что передано HIGH.

Будьте внимательны Обратите внимание, что использованные нами константы: INPUT, OUTPUT, LOW, HIGH, пишутся заглавными буквами, иначе компилятор их не распознает и выдаст ошибку. Когда ключевое слово распознано, оно подсвечивается синим цветом в Arduino IDE

ЭТО ИНТЕРЕСНО:  Какой ксенон лучше 4300 или 5000

Задачи для самостоятельного решения, для укрепления материала

1) Измените скетч так, чтобы светодиод светился 3 секунды, а пауза между свечением была 0.5 секунды.

2) Измените скетч так, чтобы светодиод ,при включении Arduino, горел непрерывно 4 секунды (подсказка: сделайте это с помощью процедуры setup ), а потом продолжал мигать в интервале, который мы должны были задать в первом задании .

Источник: http://HelpDuino.ru/svetodiod.html

Урок 02. Управление светодиодами

Для ограничения тока через светодиод необходим резистор

Примечание 1: последовательность подключения светодиода и резистора в схеме не имеет значения, можно подключить и так: +5 В, резистор 300 Ом, светодиод, 0 В

Примечание 2: +5 В в схеме подается с одного из цифровых пинов (D0D13), а 0 В – пин земли Gnd

Макетная плата

Используемый для курса стенд содержит макетную плату, все верхние контакты которой подключены к пину +5 В (верхние на рисунке), нижние контакты – к пину Gnd (0 В, нижние на рисунке) Arduino. Эти контакты используются в схемах и для питания внешних датчиков и модулей.

Остальные отверстия соединены вместе по 5 контактов (некоторые выделены полосками в качестве примеров, таким же образом соединены и все остальные) и могут использоваться для реализации различных схем путем втыкания в отверстия макетной платы элементов и проводных соединителей типа штырек/штырек.

Практическое занятие 1. Простой светофор

Нужные компоненты:

  • три светодиода трех разных цветов (красный, желтый и зеленый) с припаянными к ним резисторами
  • красный, желтый и зеленый соединительные провода со штырьками на обоих концах

Сборка:

Шаг 1: подключите светодиоды к макетной плате в соответствии с приведенным рисунком

Примечание: к цифровым выходам контроллера подключается контакт светодиода + (который с резистором)

Шаг 2: проводным соединителем штырек-штырек соедините контакт макетной платы с цифровым пином Arduino: красного светодиода – с пином 2, желтого – с пином 9, зеленого – с пином 12. Используйте провода тех же цветов, что и цвета светодиодов

Шаг 3: подключите второй контакт светодиодов (минус, без резистора, прямой на картинке) к земле. Соедините отверстие под этим контактом с нижним рядом отверстий. Для соединения с землей используйте провода синего или черного цвета

Шаг 4: Напишем программу для управления светофором. Для начала – просто включение светодиодов по очереди. Алгоритм работы:

  • включить красный светодиод
  • подождать одну секунду
  • выключить красный светодиод
  • включить желтый светодиод
  • подождать одну секунду
  • выключить желтый светодиод
  • включить зеленый светодиод
  • подождать одну секунду
  • выключить зеленый светодиод

Шаг 5: Напишите в среде Arduino IDE программу, написанную по данному алгоритму (выделенный жирным текст, комментарии писать не обязательно)

int led_red = 2;                       // красный светодиод подключен к пину 2

int led_yellow = 9;                // желтый светодиод подключен к пину 9

int led_green = 12;               // зеленый светодиод подключен к пину 12

void setup() {

// прописываем пины, к которым подключены светодиоды, как выходные

pinMode(led_red, OUTPUT);

pinMode(led_yellow, OUTPUT);

pinMode(led_green, OUTPUT);

}

void loop() {

digitalWrite(led_red, HIGH);                   // включить красный светодиод

delay(1000);                                                // подождать одну секунду

digitalWrite(led_red, LOW);                    // выключить красный светодиод

digitalWrite(led_yellow, HIGH);            // включить желтый светодиод

delay(1000);                                                // подождать одну секунду

digitalWrite(led_yellow, LOW);               // выключить желтый светодиод

digitalWrite(led_green, HIGH);               // включить зеленый светодиод

delay(1000);                                                // подождать одну секунду

digitalWrite(led_green, LOW);                // выключить зеленый светодиод

}   // начать цикл loop снова

Шаг 6: Загрузите написанную программу в контроллер и убедитесь, что светодиоды зажигаются в соответствии с написанным алгоритмом

Шаг 7: Сохраните написанную программу в папку Мои документы / Arduino / Learning / Ваша фамилия латинскими буквами под именем Svetofor_Simple

Примечание 1: сохранение выполняется командой Файл / Сохранить как. Открывается папка Arduino, в ней надо открыть папку Learning, в ней создать папку вида Ivanov, открыть ее, ввести имя файла (Svetofor_Simple) и нажать Сохранить

Примечание 2: так как тексты программ будут использоваться в дальнейших занятиях и для обеспечения возможности вновь просмотреть написанные программы обязательно сохраняйте написанные программы в папку Learning / Ваша фамилия

Практическое занятие 2. Светофор с миганием

Напишем более сложный алгоритм работы и изменим программу таким образом, чтобы поведение светодиодов было похоже на настоящий светофор

  • включить красный светодиод
  • подождать три секунды
  • помигать красным светодиодом 4 раза
  • включить желтый светодиод
  • подождать три секунды
  • выключить желтый светодиод
  • включить зеленый светодиод
  • подождать три секунды
  • помигать зеленым светодиодом 4 раза

В этом случае задачу «помигать красным светодиодом 4 раза» можно решить «в лоб» таким способом:

digitalWrite(led_ red, HIGH);                    // включить светодиод

  delay(500);                                                  // подождать полсекунды

digitalWrite(led_ red, LOW);                   // выключить светодиод

  delay(500);                                                  // подождать полсекунды

  digitalWrite(led_ red, HIGH);                  // включить светодиод

  delay(500);                                                  // подождать полсекунды

digitalWrite(led_ red, LOW);                   // выключить светодиод

  delay(500);                                                  // подождать полсекунды

  digitalWrite(led_ red, HIGH);                  // включить светодиод

  delay(500);                                                  // подождать полсекунды

digitalWrite(led_ red, LOW);                   // выключить светодиод

  delay(500);                                                  // подождать полсекунды

  digitalWrite(led_ red, HIGH);                  // включить светодиод

  delay(500);                                                  // подождать полсекунды

digitalWrite(led_ red, LOW);                   // выключить светодиод

  delay(500);                                                  // подождать полсекунды

Но такой вариант трудоемок, приводит к большому объему написанного кода и вследствие этого к трудности чтения программы и последующего изменения. Для многократных повторений одной и той же части кода можно использовать цикл for:

for (начальное значение переменной счетчика, конечное значение переменной счетчика, прибавление счетчика){

код, который нужно повторить несколько раз

}

С использованием цикла for код, выполняющий задачу «помигать красным светодиодом 4 раза» будет выглядеть так:

for(inti = 1 ; i

Источник: http://xn--80abmmkqebaqzb4b.xn----8sbeb4bxaelofk.xn--p1ai/obrazovatelnaya-robototehnika/arduino/urok-02-upravlenie-svetodiodami/

Arduino nano (ардуино нано): от покупки до мигания светодиодом

Arduino Nano входит в тройку самых популярных плат ардуино. Она позволяет создавать компактные устройства, использующие тот же контроллер, что и в Arduino Uno. В этой статье мы рассмотрим плату поближе: разберемся с распиновкой платы, узнаем особенности подключения и сделаем краткий обзор шилдов и плат расширения для Nano.

Плата Arduino Nano

Nano – одна из самых миниатюрных плат Ардуино. Она является полным аналогом Arduino Uno — так же работает на чипе ATmega328P (хотя можно еще встретить варианты с ATmega168), но с меньшим форм-фактором.

Из-за своих габаритных размеров плата часто используется в проектах, в которых важна компактность. На плате отсутствует вынесенное гнездо внешнего питания, Ардуино работает через USB (miniUSB или microUSB).

В остальном параметры совпадают с моделью Arduino Uno.

Технические характеристики Arduino Nano:

  • Напряжение питания 5В;
  • Входное питание 7-12В (рекомендованное);
  • Количество цифровых пинов – 14, из них 6 могут использоваться в качестве выходов ШИМ;
  • 8 аналоговых входов;
  • Максимальный ток цифрового выхода 40 мА;
  • Флэш- память 16 Кб или 32 Кб, в зависимости от чипа;
  • ОЗУ 1 Кб или 2 Кб, в зависимости от чипа;
  • EEPROM 512 байт или 1 Кб;
  • Частота 16 МГц;
  • Размеры 19 х 42 мм;
  • Вес 7 г.

Питание платы может осуществляться двумя способами:

  1. Через mini-USB или microUSB при подключении к компьютеру;
  2. Через внешний источник питания, имеющий напряжение 6-20 В с низким уровнем пульсаций.

Стабилизация внешнего источника выполняется при помощи схемы LM1117IMPX-5.0 на 5В. При подключении через кабель от компьютера подключение к стабилизатору происходит через диод Шоттки. Схемы обоих типов питания приведены на рисунке.

При подключении двух источников напряжения плата выбирает с наибольшим питанием.

Имеются ограничения по напряжению и току на входы и выходы платы. Все цифровые и аналоговые контакты работают в диапазоне от 0 до 5 В.

При подаче питания, выходящего за рамки этих значений, напряжение будет ограничиваться защитными диодами. В этом случае сигнал должен подключаться через резистор, чтобы не вывести контроллер из строя.

Наибольшее значение втекающего или вытекающего тока не должно превышать значение 40 мА, а общий ток контактов должен быть не более 200 мА.

На плате имеются 4 светодиода, которые показывают состояние сигнала. Они обозначены как TX, RX, PWR и L. На первых двух светодиод загорается, когда уровень сигнала низкий, и показывает, что сигнал TX или RX активен. Светодиод PWR загорается при напряжении в 5 В и показывает, что подключено питание. Последний светодиод – общего назначения, загорается, когда подается высокий сигнал.

На настоящий момент выпускается несколько видов Arduino Nano. Есть версии 2.X, 3.0., которые отличаются только чипом, на котором они работают. В версии 2.Х. используется чип ATmega168 с меньшим объемом памяти (флэш, энергонезависимой) и пониженной тактовой частотой, версия 3.0. работает на чипе ATmega328.

Распиновка Arduino Nano

Плата Ардуино Нано имеет 14 цифровых контактов, которые помечаются буквой D (цифровой, digital). Контакты используются как входы и выходы, у каждого имеется подтягивающий резистор.

Аналоговые пины обозначаются буквой А и используются как входы. У них отсутствую подтягивающие резисторы, они измеряют поданное на них напряжение и возвращают значение при помощи функции analogRead().

На некоторых цифровых пинах можно увидеть значок ~. Такие контакты можно использовать в качестве выходов ШИМ. Ардуино нано оснащена шестью такими контактами – это пины D3, D5, D6, D9, D10, D11. Чтобы использовать ШИМ, создана специальная функция analogWrite().

Установка драйвера для CH340

Микросхема CH340 часто используется в платах Ардуино со встроенным USB-to-Serial преобразователем. Она позволяет уменьшить затраты на производство плат, не влияя на ее работоспособность. При  помощи этого программатора можно легко прошивать платы Ардуино. Для того, чтобы начать работать с этой микросхемой, нужно установить драйвер на компьютер.

Установка выполняется в несколько этапов:

  • Скачивание архива с драйвером для нужной операционной системы. Для Windows, MacOS и Linux загрузить драйверы можно по ссылке http://iarduino.ru/file/230.html
  • Распаковка архива.
  • Поиск файла SETUP.EXE, его запуск.
  • На мониторе появится окно, в котором нужно нажать кнопку Install. Установка драйвера начнется, после чего можно начинать работу со схемой.

 Настройка Arduino IDE

Стандартная среда разработки Arduino IDE используется для работы всех видов Ардуино с компьютером. Чтобы начать работу, нужно сначала скачать Arduino IDE с официального сайта и установить ее. Удобнее скачивать Windows Installer, особенно если среда разработки будет установлена на постоянном рабочем компьютере. Если скачан архив, то его нужно распаковать и запустить файл Arduino.exe.

Как только среда установлена, нужно ее запустить. Для этого нужно подключить к компьютеру саму плату Ардуино через USB. Затем перейти в меню Пуск >> Панель управления >> Диспетчер устройств, найти там Порты COM и LPT. В списке появится установленная плата и указан номер порта, к которому подключается плата.

После этого нужно запустить Arduino IDE, перейти в меню Инструменты >> Порт, и указать порт, к которому присоединена Ардуино.  В меня Инструменты>> Платы нужно выбрать модель подключенной платы, в данном случае Arduino Nano. На этом установка и настройка закончены, и можно создавать программу.

Важно помнить, что если к компьютеру будет подключаться другая плата, настройки снова нужно будет поменять на соответствующее устройство.

Подключение светодиодов к Arduino Nano

В качестве тестовой программы, проверяющей работу платы, можно использовать мигание светодиодом. На плате имеется встроенный светодиод L, но можно подключить и внешний к выходу D13. Светодиод обязательно подключать через резистор, чтобы не сжечь его и не повредить плату. Анод светодиода подключается к резистору, который присоединяется к выходу D13. Катод светодиода – к земле.

В Arduino IDE есть пример, который включает мигание светодиода. Для этого нужно перейти в меню Файл>>Образцы>>1.  Basics>> Blink и загрузить пример. После выгрузки пода Ардуино будет выполнять программу, мигая светодиодом раз в секунду.

Подключение LCD 1602 к Arduino Nano

Экран LCD 1602 достаточно распространенный, для него существует разнообразные виды шилдов,  но также его можно подключить напрямую к Ардуино. Для подключения дисплея к плате нужны Arduino Nano, макетная плата, экран LCD 1602 и соединительные провода.

Выбор пинов, к которым нужно подключать дисплей, может быть любым. Для примера будет выбрана такая конфигурация: контакт RW с дисплея подключается к земле, 4й контакт дисплея – к А0 на Ардуино, 6-й контакт – к Е (Enable), с 11-го по 14-й подключаются к D4-D7. Экран подключен.

Для того, чтобы началь писать код, нужно подключить библиотеку LiquidCrystal. В ней также имеется тестовый скетч, который позволит проверить работоспособность установки. Код находится по адресу ArduinolibrariesLiquidCrystalexamplesHelloWorldHelloWorld.ino, в скетче нужно только поменять номера контактов, к которым подключен экран.

Если все подключено правильно, на мониторе загорится надпись.

Подключение nrf24l01 к Arduino Nano

Радиомодуль nrf24l01 используется в случаях, когда нужно получать данные от датчиков, которые расположены на удалении от управляющего устройства. Модуль прост в использовании и легко подключается к Ардуино.

Подключение к Ардуино Нано изображено на рисунке. Земля с платы соединяется с землей модуля, напряжение – на 3,3В, 3й контакт (CE) – к D9, с 4 по 7й – к D10-D12. Для 3го контакта и 4-го можно использовать любые пины, главное указать это потом в коде.

К радиомодулю может быть также припаян конденсатор между выходами земля и питание, который позволит уменьшить шумы, и сделает работу устройства более стабильной.

Для работы с модулем существует несколько библиотек. Наиболее распространенные библиотеки – это RF24 и Mirf. Выбор той или иной библиотеки определяется удобством использования.

Обзор популярных шилдов для Arduino Nano

Платы расширения (или arduino shield, шилд) используются для решения различных задач и упрощения проектов. На плате расширения устанавливаются все нужные электронные компоненты, а взаимодействие с другими контроллерами осуществляется через стандартные контакты Ардуино.

Nano Uno shield – это шилд, который позволяет превратить плату Нано в Уно. Платформа имеет различные колодки для подключения, кнопку перезагрузки и гнездо питания.

Arduino Nano Ethernet Shield – используется для обеспечения работы с сетью через Ethernet. Аналогичен такому же шилду для Arduino Uno, но имеет меньшие размеры и гораздо удобнее в реальных проектах.

Arduino Nano Motor Shield – шилд, который используется в робототехнических проектах для подключения моторов и двигателей к плате Ардуино. Его основная задача – обеспечение управления устройствами, которые потребляют большой (по сравнению с Ардуино) ток.

Также с помощью шилда можно управлять мощностью мотора и менять его направление вращения.

Моделей плат Motor Shield существует множество, у всех имеется в схеме мощный транзистор, теплоотводящие компоненты, схемы для подключения внешнего источника напряжения и разъемы ля подключения двигателей.

ЭТО ИНТЕРЕСНО:  Как подключить датчик движения к прожектору

Arduino Nano Sensor Shield – самая распространенная платформа. Шилд прост – основной его задачей является обеспечение удобного подключения к плате Ардуино других устройств. На шилде расположены дополнительные разъемы питания и земли, разъемы для подключения внешнего источника напряжения, светодиод и кнопка перезагрузки.

Arduino Data Logging Shield – шилд, который позволяет писать лог. Также он используется как файловое хранилище или часы реального времени. Для работы с шилдом существует специальная библиотека, которая позволяет логировать информацию на карту памяти.

Arduino Proto Shield – платформа для быстрого прототипирования или создания своего шилда. На этих платах расположены площадки для монтажа нужных компонентов, выведена кнопка сброса, 2 светодиода и разъем для внешнего питания. С их помощью можно повысить компактность устройства.

Где купить Arduino Nano

Традиционно самые низкие цены предлагают зарубежные интернет-магазины. В России цены почти всегда будут выше на 20-200 процентов, но не придется ждать заказа около месяца.

Источник: https://electronicparts.ru/drugoe/arduino-nano-arduino-nano-ot-pokupki-do-miganiya-svetodiodom.html

Работаем с множеством светодиодов

05.Control: ForLoopIteration
05.Control: Arrays
Бегущие огни
07.Display: barGraph (Световая шкала и потенциометр)
Модуль 2-цветного светодиода KY-011
Модуль 2-цветного светодиода KY-029
Семицветный светодиодный модуль KY-034

Мигать одним светодиодом не слишком интересно. В этом уроке мы рассмотрим работу с множеством светодиодов. Если проявить фантазию, то можно создавать интересные эффекты.

Сам принцип работы со светодиодами не меняется, мы также задаём номера выводом и подаём нужные сигналы. Но проблема заключается в том, что придётся писать однотипный код для каждого светодиода. И когда светодиодов наберётся большое количество и вы решите поменять логику, то придётся искать и менять код у каждого светодиода. Это не очень удобно. Поэтому для облегчения рутинной работы используют циклы, массивы, коллекции.

05.Control: ForLoopIteration

Для знакомства с циклом for в Arduino IDE есть пример File | Examples | 05.Control | ForLoopIteration.

Для эксперимента нам понадобятся шесть светодиодов. Соответственно, к ним нужно добавить шесть резисторов. Соединяем их как на рисунке. Задействуем цифровые выводы 2, 3, 4, 5, 6, 7.

Цель скетча — поочерёдно зажигать и гасить светодиоды в одном направлении, а затем в другом.

int timer = 100; // интервал между миганиями светодиодов void setup() { // проходимся в цикле по каждому светодиоду от 2 до 7 и влючаем нужный режим for (int thisPin = 2; thisPin < 8; thisPin++) { pinMode(thisPin, OUTPUT); }} void loop() { // опять проходимся в цикле по каждому светодиоду for (int thisPin = 2; thisPin < 8; thisPin++) { // включаем digitalWrite(thisPin, HIGH); delay(timer); // выключаем digitalWrite(thisPin, LOW); } // ещё раз проходимся в цикле, но в обратном порядке от 7 до 2 for (int thisPin = 7; thisPin >= 2; thisPin—) { // включаем digitalWrite(thisPin, HIGH); delay(timer); // выключаем digitalWrite(thisPin, LOW); }}

Доказательство, что код работает.

05.Control: Arrays

Обращаться к каждому светодиоду можно не только по очереди в цикле, но и через массив. Использование массивов даёт больше гибкости. Посмотрим на примере File | Examples | 5.Control | Arrays. Схема остаётся прежней из предыдущего примера.

Массив объявляется с помощью квадратных скобок, а затем к переменной массива обращаются, указывая в квадратных скобках индекс массива, который начинается с 0. Таким образом, чтобы обратиться к первому элементу массива, следует писать ledPins[0] и т.д. к скетчу смотрите в предыдущем примере.

int timer = 100;int ledPins[] = { 2, 7, 4, 6, 5, 3}; // массив в случайном порядкеint pinCount = 6; // количество светодиодов (размер массива) void setup() { for (int thisPin = 0; thisPin < pinCount; thisPin++) { pinMode(ledPins[thisPin], OUTPUT); }} void loop() { for (int thisPin = 0; thisPin < pinCount; thisPin++) { digitalWrite(ledPins[thisPin], HIGH); delay(timer); digitalWrite(ledPins[thisPin], LOW); } // loop from the highest pin to the lowest: for (int thisPin = pinCount - 1; thisPin >= 0; thisPin—) { digitalWrite(ledPins[thisPin], HIGH); delay(timer); digitalWrite(ledPins[thisPin], LOW); }}

Если вы замените строку int ledPins[] = {2, 7, 4, 6, 5, 3}; на int ledPins[] = {2, 3, 4, 5, 6, 7};, то получите точно такое же поведение светодиодов из предыдущего примера с циклом for, когда светодиоды загораются и гаснут по очереди. Но использование массива позволяет поменять начальное положение светодиодов, не меняя остальной код. И вы можете только в одном месте менять начальные позиции для запуска волны. Например, зададим массив через одного: {2, 4, 6, 3, 5, 7}.

Бегущие огни

Ещё один вариант бегущих по порядку огней. На этот раз уместим код в один цикл for, добавив переменную, следящую за направлением движения.

const int ARRAY_SIZE = 6; int ledPin[] = {2, 3, 4, 5, 6, 7};int ledDelay = 500;int direction = 1;int currentLed = 0;unsigned long changeTime; void setup() { for (int i = 0; i < ARRAY_SIZE; i++) { pinMode(ledPin[i], OUTPUT); } changeTime = millis(); } void loop() { if ((millis() - changeTime) > ledDelay) { changeLed(); changeTime = millis(); }} void changeLed() { // выключаем все светодиоды for (int i = 0; i < ARRAY_SIZE; i++) { digitalWrite(ledPin[i], LOW); } // включаем текущий LED digitalWrite(ledPin[currentLed], HIGH); // увеличиваем значение currentLed += direction; // меняем направление, если достигли конца if (currentLed == ARRAY_SIZE - 1) { direction = -1; } if (currentLed == 0) { direction = 1; }}

Три примера показывают, что реализовать проект можно разными способами. Не существуют универсальных решений, каждый решает свою задачу индивидуально, опираясь на свой опыт и практику.

07.Display: barGraph (Световая шкала и потенциометр)

Рассмотрим пример с использованием светодиодной шкалы и потенциометра — Examples | 07.Display | barGraph. Если световой шкалы нет, то замените на 10 обычных светодиодов.

Изменяя вручную напряжение при помощи потенциометра, мы будем выводить информацию на световую шкалу.

Добавим на схему потенциометр. Средняя ножка ведёт на аналоговый вывод A0, а остальные две на 5 V и GND.

Источник: http://developer.alexanderklimov.ru/arduino/leds.php

Подключение светодиода к Ардуино

Как подключить светодиод к Ардуино ► через резистор. Подробная инструкция по началу работы с микроконтроллером и скетч для мигания светодиода на Arduino UNO.

Рассмотрим, как подключить светодиод к Ардуино через резистор. Мигание светодиодом — это самая простая программа (скетч) для начала работы с микроконтроллером. Далее размещена подробная инструкция по сборке схемы со светодиодом и резистором, правила загрузки программы в плату Arduino UNO и приведен скетч для мигания светодиода на Arduino UNO с комментариями.

Назначение и устройство светодиода

Светодиоды — это полупроводниковые элементы, которые служат для индикации и освещения. Они имеют полярность (+ и ) и чувствуют направление движения постоянного тока. Если подключить светодиод неправильно, то постоянный ток не пройдет и прибор не засветится. Кроме того, светодиод может выйти из строя при неправильном подключении. Анод (длинная ножка светодиода) подключается к плюсу.

Фото. Устройство светодиода и резистора в разрезе

В этом простом примере показано, как с помощью платформы Arduino заставить мигать светодиод. Для начала мы соберем простую схему на макетной плате, подключив светодиод к цифровому выходу микроконтроллера Ардуино (входы и выходы на плате еще называют Pin). Загрузив скетч (так называют программу для Ардуино), вы поймете, как пользоваться и работать с платой Arduino UNO.

Как подключить светодиод к Arduino

Для занятия нам понадобятся следующие детали:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • макетная плата;
  • 2 светодиода и 2 резистора 220 Ом;
  • провода «папа-папа».

Для надёжной сборки устройств создаются печатные платы, на что уходит много времени. Для быстрой сборки электрических схем без пайки используют макетную плату (breadboard). Под слоем пластика на макетной плате находятся медные пластины-рельсы (дорожки), выложенные по простому принципу (смотри фото). Дорожки служат для создания контакта между радиоэлементами и проводами.

Быстрая сборка схем на макетной плате

Одну и ту же схему можно собрать разными способами

Соберите схему подключения светодиода к Arduino, как на фото ниже

Длинная ножка светодиода — анод, она всегда подключается к плюсу

Для чего светодиод включают к Ардуино с резистором? Дело в том, что в светодиоде стоит кристалл который боится больших токов. Резистор призван ограничивать силу тока (Амперы), чтобы светодиод не перегорел. Большой ток губителен для светодиода, меньший ток (благодаря подключению резистора) обеспечивает длительную работу. Чтобы подключить светодиод к Ардуино без резистора, используйте 13 порт.

Подключите плату Arduino к компьютеру при помощи USB провода

Кабель с разъемами USB-A и USB-B для подключения принтера

Если у вас не установлена программа Arduino IDE, то скачайте последнюю версию на официальном сайте www.arduino.cc. С помощью USB кабеля производится запись программ, также плата получает питание от компьютера. Если требуется автономная работа электронного устройства, то плату можно запитать от батарейки или блока питания на 7-12 В. При подаче питания на плате загорится светодиод индикации.

Откройте программу Arduino IDE и проверьте подключение платы

Убедитесь, что программа определила ваш тип платы Ардуино

Шаг 1. Зайдите в основном меню «Инструменты -> Плата». Если плата Arduino определилась неправильно, то выберите необходимый тип, например, Arduino Uno.

Шаг 2. Установите порт (кроме COM1) подключения в меню «Инструменты -> Порт», так как при подключении Ардуино к ПК создается виртуальный COM-порт.

Убедитесь, что программа определила порт подключения Ардуино

Скетч для включения светодиода от Ардуино

void setup() { pinMode(13, OUTPUT); // объявляем пин 13 как выход } void loop() { digitalWrite(13, HIGH); // зажигаем светодиод delay(1000); // ждем 1 секунду digitalWrite(13, LOW); // выключаем светодиод delay(1000); // ждем 1 секунду }

Скопируйте код под фото и вставьте свой первый скетч в программу

Скопируйте код и вставьте скетч в программу Arduino IDE

Перед загрузкой программы в микроконтроллер можно выполнить проверку (компиляцию), на наличие ошибок в коде. В случае обнаружения ошибки — будет получено сообщение в нижнем окошке Arduino IDE. В любом случае, при загрузке скетча, сначала происходит проверка и компиляция программы. При компиляции происходит перевод программы в двоичный код, понятный микроконтроллеру.

Загрузите скетч в Arduino, нажав на кнопку «Вгрузить» (смотри фото)

Перед загрузкой программы в микроконтроллер, потребуется сохранить скетч на компьютере. Нажмите «Сохранить» в появившемся окне и начнется .

Перед загрузкой программы, потребуется сохранить скетч

Пояснения к коду:

  1. процедура setup выполняется при запуске микроконтроллера один раз. Используется для конфигурации портов микроконтроллера и других настроек;
  2. после выполнения setup запускается процедура loop, которая выполняется в бесконечном цикле. Это мы используем, чтобы светодиод мигал постоянно;
  3. процедуры setup и loop должны присутствовать в любой программе (скетче), даже если вам не нужно ничего выполнять в них — пусть они будут пустые, просто не пишите ничего между фигурными скобками.

(9 votes, average: 5,00

Источник: https://xn--18-6kcdusowgbt1a4b.xn--p1ai/%D1%81%D0%B2%D0%B5%D1%82%D0%BE%D0%B4%D0%B8%D0%BE%D0%B4-%D0%B0%D1%80%D0%B4%D1%83%D0%B8%D0%BD%D0%BE/

Arduino Урок 2 – Подключаем кнопку и светодиод

В предыдущем уроке мы узнали как подключать Arduino и выполнять простешую программу. В этом уроке мы научимся управлять нашим микроконтроллером с помощью обычной кнопки. Для этого нам потребуется обычная кнопка и светодиод.

Подключение кнопки

Сперва подключим кнопку к Arduino через любой доступный порт (pin). Можно использовать как аналоговый, так и цифровой порт. Для этого подадим на вход нашей кнопки 5 вольт, а выход соединим с портом Arduino, пусть это будет порт #2.

Так же, следует понимать, когда кнопка не нажата, связь между портами “5V” и “2” будет разомкнута. Из-за этого Arduino не сможет корректнто считывать информацию из порта “2”, так как этот pin будет висеть в воздухе. Решается эта проблема очень просто. Для этого нужно дополнительно подключить выход из кнопки на землю через подтягивающий резистор как это показано на следующей схеме.

Таким образом, при нажатии на кнопку на порт “2” будет поступать 5 вольт напряжения, а когда не нажата порт будет соединён с землёй.

Добавляем светодиод

Давайте подключим светодиод который будет загораться при нажатии на нашу кнопку. Сделать это очень просто. Достаточно подключить анод светодиода (длинная ножка) в порт “13”. Далее в программе мы будем включать светодиод просто подавая 5 вольт на этот порт. Катод светодиода (короткая ножка) подключаем на землю через разъём “GND”. Но не забываем про резистор, так как 5 вольт для одного светодиода слишком много и светодиод может перегореть.

Что бы правильно подобрать резистор с нужным нам сопротивлением можно воспользоваться специальной таблицей:

Цветовая характеристика светодиода Напряжение
Инфракрасный до 1.9 В
Красный от 1.6 до 2.03 В
Оранжевый от 2.03 до 2.1 В
Желтый от 2.1 до 2.2 В
Зелёный от 2.2 до 3.5 В
Синий от 2.5 до 3.7 В
Фиолетовый от 2.8 до 4 В
Ультрафиолетовый от 3.1 до 4.4 В
Белый от 3 до 3.7 В

Рассчитать необходимое сопротивление резистора можно по следующей формуле: 

R=(Uист-Uд)/Iд, где Uист – напряжение источника питания, – напряжение диода, – ток диода (обычный светодиод потребляет около 20 миллиампер).

Пример рассчёта для красного светодиода:

R = (5V – 2.03V) / 20mA = 0,1485. Можем округлить до 150 Ом. С таким резистором крассный светодиод будет работать с максимальной яркостью. Меняя сопротивление резистора мы можем сделать свечение нашего светодиода более или менее ярким.

Пишем программу

Наша схема готова, осталось написать программу. Запускаем Arduino IDE и вставляем следующий код:

const int buttonPin = 2; // номер порта нашей кнопкиconst int ledPin =    13; // номер порта светодиодаvoid setup() {    // устанавливаем порт светодиода на выход    pinMode(ledPin, OUTPUT);    // устанавливаем порт кнопки на вход    pinMode(buttonPin, INPUT);}void loop() {    // читаем состояние порта кнопки и записываем в переменную    int buttonState = digitalRead(buttonPin);    // делаем простую проверку нашей переменной, если на входе в порт кнопки присутствует напряжение — включаем светодиод, иначе — выключаем    if (buttonState == HIGH) {        // подаем 5 вольт на порт наешго светодиода        digitalWrite(ledPin, HIGH);        } else {        // выключаем светодиод        digitalWrite(ledPin, LOW);        }

}

Подключаем нашу Arduino и перепрошиваем её через меню «Скетч → » или нажав на комбинацию Control+U. Дожидаемся сообщения « завершена».

Проверка работы устройства

Если Вы сделали всё правильно то при нажатии на кнопку можно увидеть как зажигается светодиод. Если же кнопку отпустить светодиод выключится.

Источник: https://heliosun.com.ua/arduino-articles/arduino-urok-2-podklyuchaem-knopku-i-svetodiod/

Как подключить драйвер светодиодов tlc5940 к Arduino

микросхема TLC594

Из статьи вы узнаете, как подключить ШИМ генератор TLC5940 в качестве драйвера светодиодов к Ардуино, как подключить несколько драйверов в цепочке и как управлять ими с помощью библиотеки tlc5940. Также рассказано, как освободить SPI выводы Arduino, занимаемые микросхемой при стандартном подключении.

Для повторения схемы, рассмотренной в статье, вам понадобятся: любой контроллер arduino (в статье используется Nano в качестве примера), макетная плата, соединительные провода, набор перемычек (желательно), как минимум один светодиодный драйвер, на каждый драйвер потребуется 16 светодиодов, резисторы на 2 кОм и на 10 кОм.

ЭТО ИНТЕРЕСНО:  Как выбрать светодиодные лампы для автомобиля

Купить микросхему у проверенного мной продавца можно здесь или сразу десяток со скидкой здесь.

Описание микросхемы tlc5940

Микросхема драйвера имеет по 14 выводов с каждой стороны. С одной стороны корпуса можно заметить небольшую выемку. Расположите микросхему этой выемкой вправо и установите на макетной плате. Лучше установить её на краю макетки.

Но у нас на макетной плате расположена ещё и Arduino Nano. Если драйвер расположен выемкой вправо, то нумерация выводов начинается с левого нижнего и идет слева-направо, затем наверх и справа налево (против часовой стрелки).

То есть левый нижний вывод — первый, левый верхний — двадцать восьмой. Более наглядно на фото:

Драйвер светодиодов TLC5940

Подключение микросхемы tlc5940 к arduino

Подключите выводы драйвера к arduino в следующем порядке:

19 и 21 выводы подключаются к рельсе питания +5В (на фото жёлтые перемычки)22 и 27 выводы подключаются к рельсе земли (белые перемычки)18 вывод соединяется с 3 цифровым выводом Arduino (белая перемычка)24 вывод соединяется с 9 цифровым выводом Arduino (белая перемычка)23 вывод соединяется с 10 цифровым выводом Arduino (зелёный провод)23 вывод дополнительно соединяется через подтягивающий резистор 10 кОм к рельсе питания, что бы при включении драйвера все светодиоды были погашены.26 вывод соединяется с 11 цифровым выводом Arduino (оранжевый провод)25 вывод соединяется с 13 цифровым выводом Arduino (синий провод)

20 вывод нужно через резистор 2 кОм соединить с землёй. Таким способом мы ограничим ток на выводах для подключения светодиодов 20 мА. Рассчитывается этот резистор по формуле: R = 39.06 / I (в Амперах). Максимальный ток составляет 120мА на канал.

Подключение самого драйвера окончено. Соедините перемычками рельсы питания и земли с соответствующими выводами Arduino. Примерно вот так это должно выглядеть:

TLC5940 установлен на макетную плату а подключён к контроллеру

Рисунок для тех, кому это кажется более наглядным:

Подключение драйвера светодиодов TLC5940. Показан только один подключённый светодиод, чтобы не загромождать рисунок.

Теперь подключаем светодиоды по порядку к управляемым выводам драйвера. 28 вывод — это нулевой светодиод (OUT0), далее с первого по пятнадцатый номер вывода совпадает с номером светодиода (первый вывод — OUT1, второй — OUT2 пятнадцатый — OUT15). Драйвер управляет землёй, а не питанием. Поэтому, светодиоды подключаются к выводам драйвера катодами.

Устанавливаем на макетку светодиоды. OUT0 и OUT15 соединены с катодами перемычками:

TLC5940 и 16 светодиодов

Для работы с драйвером нужно скачать библиотеку Tlc5940. Распакуйте содержимое архива в папку с файлами среды arduino IDE в папку libraries. Загрузите в контроллер следующий код:

#include ; void setup() { //Инициализируем драйвер Tlc.init(); } void loop() { //Устанавливаем нулевую яркость всех светодиодов Tlc.clear(); //Для каждого из 16 каналов: for (int channel = 0; channel < 16; channel += 1) { //Устанавливаем максимальную яркость Tlc.set(channel, 4094); } //Применяем изменения (зажигаем светодиоды) Tlc.update(); }

  //Устанавливаем нулевую яркость всех светодиодов  //Для каждого из 16 каналов:  for (int channel = 0; channel

Источник: https://uscr.ru/kak-podklyuchit-drajver-svetodiodov-tlc5940-k-arduino/

Как подключить светодиод к Arduino

Одно из первых заданий, которое выполняет начинающий электротехник-программист, — мигание светодиодом (LED). Чтобы выполнить задачу, нужно не только написать скетч, но и произвести правильное подключение светодиода к Ардуино.

Особенности подключения

Диод — полупроводниковый прибор, обладающий такими особенностями:

  • полярность;
  • напряжение пробоя.

Полярность светодиодов

При прямом включении анод светодиода подсоединяют к точке с большим потенциалом, а катод — с меньшим. Конструктивно анод и катод можно различить по длине вывода:

  • длинный — анод (+);
  • короткий — катод (-).

Если перепутать порядок включения, то велика вероятность пробоя диода. Это происходит, когда обратное напряжение превышает напряжение пробоя. В результате чего светодиод просто перегорит.

На вольт-амперной характеристике участок обратного включения находится в левом нижнем квадранте.

Ограничение напряжения

В техпаспорте каждой модели LED указано, что прямое напряжение, при котором прибор зажигается, составляет 2-4 В. Большее напряжение подавать на диод нецелесообразно.

Диод боится силы тока, превышающей 20 мА. Чтобы контролировать показатель, последовательно с источником перед анодом включается токоограничительный резистор (необязательно мощный). Его номинал рассчитывается по закону Ома: сопротивление — это отношение напряжения к силе тока. Напряжение — величина, поступающая на анод. Ток выбирается по наибольшему значению в паспорте прибора.

Схемы подключение к плате

Подключение диода к плате Ардуино Нано, или Уно, или любой другой модели производится следующим образом: питание -> резистор -> светодиод -> общий провод. Для подключения лампы, например, потребуется собрать более сложную схему с преобразователями сигнала.

Чтобы убедиться в необходимости токоограничительного резистора, а также контролировать все параметры соединения, можно установить различные датчики и модули:

  1. Амперметры. Один прибор включается последовательно до резистора, а другой — между резистором и светодиодом.
  2. Вольтметр. Включается параллельно диоду. Показывает напряжение, которое падает на диоде (в открытом и запертом состоянии LED оно разное).

Диод можно подключить и к синусоидальному источнику питания. Но гореть он будет только половину от общего времени, потому что отрицательную полуволну он не пропустит. В таком случае нелишним будет подключить последовательно или встречно-параллельно с LED диод, который ограничит амплитуду переменного сигнала.

Пошаговая инструкция по подключению

Подключить LED к Arduino можно двумя методами:

  1. Через макетную плату.
  2. Через пайку элементов.

Для работы с макетной платой понадобятся:

  • провода типа «папа-папа»;
  • светодиод;
  • резистор на 220 В.

Инструкция по подключению:

  1. Провод одним концом подключается к контакту, с которого будет подаваться питание, а другим — к гнезду на сборочном поле макетной платы.
  2. Последовательно питанию в гнездо макетного поля подключается резистор (полярность не важна).
  3. Последовательно с резистором подключается светодиод (анодом к резистору).
  4. Катод LED заводится на вывод GND платы.

Подключение через пайку элементов производится в такой же последовательности за одним исключением: вместо проводов «папа-папа» используются проводники, концы которых лудят и припаивают к элементам.

Достоинство первого метода — простота, недостаток — слабый контакт между элементами. Преимущество второго способа подключения — надежный контакт между компонентами, недостаток — необходимость нагрева платы и элементов паяльником, что повышает риск теплового пробоя любого компонента.

Мигать LED на Arduino может и без подключения периферии. В плате есть встроенный светодиод, который можно настроить на любой режим работы.

Все тесты лучше проводить на макетной плате.

Библиотека команд

Чтобы зажечь светодиод, нужно:

  1. В функции инициализации void setup()обозначить нужный вывод как выход (например: pinMode(13, OUTPUT);).
  2. В бесконечном цикле void loop() подать высокий уровень сигнала на выбранный вывод (например: digitalWrite(13, HIGH);).

Помигать этим элементом можно, если с нужной частотой зажигать и тушить LED. Частоту можно задать либо с помощью задержек [delay(*время в миллисекундах*)], либо с помощью таймера и обработчика прерывания.

Скетчи для управления

Скетчи — коды, который формируют прошивки для процессора Arduino. Они пишутся в среде программирования и загружаются либо через SPI-программатор, либо через USB (есть специальные версии плат с микросхемой CH340, позволяющие загружать код через этот интерфейс).

Код, который зажигает светодиод:

123456789 void setup(){ pinMode(13, OUTPUT); //объявить вывод выходом} void loop(){ digitalWrite(13, HIGH); //подать высокий уровень сигнала на LED}

void setup() { pinMode(13, OUTPUT); //объявить вывод выходом } void loop() { digitalWrite(13, HIGH); //подать высокий уровень сигнала на LED }

Скетч, который мигает светодиодом светодиод:

123456789101112 void setup(){ pinMode(13, OUTPUT);} void loop(){ digitalWrite(13, HIGH); delay(500); //задержка 0,5 с digitalWrite(13, LOW); //подать низкий уровень сигнала на LED delay(500);}

void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delay(500); //задержка 0,5 с digitalWrite(13, LOW); //подать низкий уровень сигнала на LED delay(500); }

На Ардуино плавное включение светодиода организуется при помощи ШИМ. Этим же способом управления можно производить изменение яркости горения LED.

Код для плавного включения светодиода:

12345678910111213141516171819 void setup(){ pinMode(13, OUTPUT);} void loop(){ for(int i=0; i >= 255; i++) { analogWrite(13, i); //плавное включение LED delay(10); }  for(int i=255;i >= 0; i—) { analogWrite(13, i); //плавное затухание LED delay(10); }}

void setup() { pinMode(13, OUTPUT); } void loop() { for(int i=0; i >= 255; i++) { analogWrite(13, i); //плавное включение LED delay(10); } for(int i=255;i >= 0; i—) { analogWrite(13, i); //плавное затухание LED delay(10); } }

Чтобы менять яркость горения в данном скетче, нужно варьировать значение переменной «i» в цикле «for». Регулировать яркость самостоятельно можно, если подключить 2 кнопки, которые будут инкрементировать и декрементировать значение переменной «i» в условиях «if».

Источник: https://CleverDIY.ru/kak-podklyuchit-svetodiod-k-arduino

Подключение трехцветного светодиода к Arduino Uno

В этой статье мы будем подключать трехцветный (красный/зеленый/синий) светодиод (RGB LED) к плате Arduino Uno.

Принципы работы трехцветного светодиода

Внешний вид трехцветного светодиода показан на следующем рисунке:

Трехцветный светодиод имеет 4 контакта как показано на рисунке ниже:

  • контакт 1: цвет 1 отрицательный вывод при общем аноде или цвет 1 положительный вывод при общем катоде;
  • контакт 2: общий положительный вывод для всех трех цветов при общем аноде или общий отрицательный вывод для всех трех цветов при общем катоде;
  • контакт 3: цвет 2 отрицательный вывод или цвет 2 положительный вывод;
  • контакт 4: цвет 3 отрицательный вывод или цвет 3 положительный вывод.

Таким образом, есть 2 типа трехцветных светодиодов – с общим катодом (ОК) и с общим анодом (ОА). При общем катоде (общий отрицательный вывод) мы имеем три положительных вывода, где каждый вывод отвечает за свой цвет, и один общий отрицательный вывод. Внутренняя схема подключений трехцветного светодиода с общим катодом показана на следующем рисунке:

В таком светодиоде (с ОК) если мы хотим зажечь красный цвет мы должны подать питание на контакт, отвечающий за красный цвет, и подать землю на общий отрицательный вывод. Аналогично и для других цветов.

При общем аноде (общий положительный вывод) мы имеем три отрицательных вывода, где каждый вывод отвечает за свой цвет, и один общий положительный вывод. Внутренняя схема подключений трехцветного светодиода с общим анодом показана на следующем рисунке:

В таком светодиоде (с ОА) если мы хотим зажечь красный цвет мы должны подать землю на контакт, отвечающий за красный цвет, и подать питание на общий положительный вывод. Аналогично и для других цветов.

В нашей схеме мы будем использовать трехцветный светодиод с общим анодом (ОА). Если вам будет необходимо подсоединить больше подобных светодиодов к плате Arduino Uno, к примеру 5, то вам будет нужно 5×4= 20 контактов, но можно уменьшить количество контактов в этом случае до 8 если мы соединим трехцветные светодиоды параллельно и будем использовать технологию мультиплексирования.

Необходимые компоненты

Плата Arduino UNOТрехцветный светодиод с общим анодом (ОА)

Резистор 1 кОм

Источник: https://microkontroller.ru/arduino-projects/podklyuchenie-trehczvetnogo-svetodioda-k-arduino-uno/

RGB светодиод и Arduino

В этой статье рассмотрены основы использования RGB (Red Green Blue (красный, зеленый, синий)) светодиода с Arduino.

Мы используем функцию analogWrite для управления цветом RGB светодиода.

На первый взгляд, RGB светодиоды выглядят так же, как и обычные светодиоды, но на самом деле у них внутри установлено три светодиода: один красный, один зеленый и да, один синий. Управляя яркостью каждого из них, вы можете управлять цветом светодиода.

То есть, мы будем регулировать яркость каждого светодиода и получать нужный цвет на выходе, как будто это палитра художника или словно вы настраиваете частоты на своем плеере. Для этого можно использовать переменные резисторы. Но в результате схема будет достаточно сложной. К счастью, Arduino предлагает нам функцию analogWrite. Если задействовать на плате контакты, отмеченные символом «~», мы можем регулировать напряжение, которое подается на соответствующий светодиод.

Необходимые узлы

Для того, чтобы реализовать наш небольшой проект, нам понадобятся:

1 RGB светодиод 10 мм

3 резистора на 270 Ω (красная, фиолетовая, коричневая полоски). Вы можете использовать резистор с сопротивлением до 1 кОм, но не забывайте, что с повышением сопротивления, светодиод начинает светить не так ярко.

1 Breadboard

1 плата Arduino Uno R3 или ее аналог

Коннекторы

Схема подключения

У RGB светодиода четыре ноги. По одному позитивному контакты на каждый светодиод и один общий контакт, к которому подключаются все отрицательные полюса светодиодов (аноды).

Общий анод на RGB светодиоде – это второй по счету, самый длинный контакт. Этот контакт мы подключим к земле (gnd).

Для каждого светодиода нужен собственный резистор на 270 Ом, чтобы предотвратить возможность протекания чересчур больших токов. Эти резисторы устанавливаются в цепь между катодами (красный, зеленый и синий) и управляющими пинами на нашем Arduino.

Если вы используете RGB светодиодиод с общим анодом, вместо общего катода, самый длинный контакт на светодиоде подключается к пину +5 V вместо пина gnd.

Цвета

Немного теории: мы можем смешивать три основных цвета и видеть новые оттенки, так как в наших глазах три типа рецепторов (для красного, зеленого и синего цветов). В результате ваш глаз и мозг обрабатывает информацию о насыщенности этих трех цветов и преобразовывает их в другие оттенки спектра.

То есть, используя одновременно три светодиода, мы словно обманываем наши глаза. Эта же идея используется в телевизорах, где жидкокристаллический дисплей состоит из маленьких точек красного, зеленого и синего цветов, которые расположены очень близко друг к другу и формируют отдельные пиксели.

Если мы настроим одинаковую яркость всех светодиодов, мы он будет светиться белым. Если мы отключим синий светодиод и будут гореть с одинаковой яркостью только красный и зеленый, мы получим желтый свет.

Мы можем управлять яркостью каждого светодиода отдельно, смешивая цвета как нам заблагорассудится.

Так как черный цвет не что иное, как отсутствие света, получить его не получится. Ближайший оттенок черного – это полностью выключенные светодиоды.

Скетч Arduino

Скетч, который приведен ниже, будет перебирать цвета в цикле: красный, зеленый, синий и аквамарин. В общем, стандартный набор цветов.

/*

Adafruit Arduino — RGB светодиод подробная инструкция на сайте:

arduino-diy.com

*/

int redPin = 11;

int greenPin = 10;

int bluePin = 9;

//уберите тег комментария со строки ниже, если вы используете светодиод с общим анодом

//#define COMMON_ANODE

void setup()

{

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

}

void loop()

{

setColor(255, 0, 0); // красный

delay(1000);

setColor(0, 255, 0); // зеленый

delay(1000);

setColor(0, 0, 255); // синий

delay(1000);

setColor(255, 255, 0); // желтый

delay(1000);

setColor(80, 0, 80); // фиолетовый

delay(1000);

setColor(0, 255, 255); // аквамарин

delay(1000);

}

void setColor(int red, int green, int blue)

{

#ifdef COMMON_ANODE

red = 255 — red;

green = 255 — green;

blue = 255 — blue;

#endif

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

}

Попробуйте запустить этот скетч. Особенности скетча раскрыты ниже

Скетч начинается с указания пинов, которые используются для каждого отдельного цвета:

int redPin = 11;

int greenPin = 10;

int bluePin = 9;

Источник: http://arduino-diy.com/arduino-rgb-svetodiod

Понравилась статья? Поделиться с друзьями:
Советы электрика
Как узнать мощность асинхронного двигателя

Закрыть