Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Сообщество системных администраторов Litl-Admin.ru Arduino сборки: мигалка


Ссылка на материал

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

Вот так выглядит монтажная плата и сам контроллер Arduino Uno (простенький).

Монтажка

Монтажка

Решил я сделать мигалку на светодиодах.

И светодиоды

И светодиоды

Расставлю их в монтажную плату. Этакой цветной лесенкой.

Диоды втыкаются в ряды платы

Диоды втыкаются в ряды платы

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

Есть ещё числовые ряды 1-64 по строкам и a-e, f-j по столбцам. Замкнуты соответственно, каждый ряд – своя половина букв. Т.е. например 40 ряд замкнуты все пины от A до E, а так же пины с F по J, но эти две группы между собой не замкнуты.

Делаю соединения

Делаю соединения

Вид более сверху

Вид более сверху

По цвету я подключил для удобства. Это не принципиально. Обратите внимание, что подключаем их на цифровой выход (DIGITAL). С другой стороны есть ANALOG. Итак, задействовал пины с 1 по 6. Позднее я передвину на 1 пин вправо, чтобы счёт начинался с 2-х. А общий пин GND (земля) вывел на плату снизу. На предыдущих фото это черные проводки.

Подключаю на плату по цвету

Подключаю на плату по цвету

Схема

Схема

Ну а теперь пишу простую программку:

int START = 2; // Начальный пин диода
int COUNT = 6; // Количество диодов
void setup() // Подготовка пинов вывода
{
for (int i = START; i < START + COUNT; i ++) // Цикл инициализации
{
pinMode(i, OUTPUT); // Указываем пин как цифровой выход
}
}
void loop() // Рабочее тело
{
for (int i = START; i < START + COUNT; i ++)
{
digitalWrite(i, HIGH); // Посылаем высокий сигнал (гори!)
delay(200); // ждём 0.2 секунды
digitalWrite(i, LOW); // Гасим диод
}
}

Исходник

Исходник



В избранное