Меню

Гирлянда на Arduino

В прошлой статье мы проводили эмуляцию работы Arduino в программе Proteus. Но гораздо интереснее прошить реальный  Arduino и понаблюдать за результатами в живую, чем мы и займемся в этой статье. Думаю, многим уже надоел банальный моргалик на одном светодиоде. Поэтому, чтобы порадовать глаз и потешить себя, мы будем собирать гирлянду сразу на 5 светодиодах.

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

Первым делом открываем нашу среду разработки, знакомую вам еще с прошлой статьи:

Гирлянда на Arduino

Больше всего нас интересуют вот эти два блока:

Гирлянда на Arduino

Void setup. Сюда мы вписываем конфигурацию выводов нашей Arduino. Строчка «put your setup code here, to run once» в дословном переводе означает «поместите ваш код установки здесь, чтобы запустить один раз».

Void loop. Здесь у нас будет программа, которая будет «крутиться» в бесконечном цикле. Строчка «put your main code here, to run repeatedly» в дословном переводе «поместите ваш основной код здесь, чтобы запустить повторно».

Ну что, погнали писать!

Гирлянда на Arduino

pinMode — режим вывода

Output — выход

Выводы Arduino под номерами 3,4,5,6,7 мы «заставляем» быть выходами. То есть они нам буду выдавать либо логический ноль (напряжения нет), либо единичку (напряжение есть).

Знак «//» и текст после него  — это комментарии, которые удобны для нас, чтобы понять что вообще происходит в программе, но эти комментарии не играют никакой роли при компиляции, так как компилятором они просто игнорируются.

Далее продолжаем писать  программку с первым эффектом моргания:

Гирлянда на Arduino

Ну здесь тоже все до боли просто.

DigitalWrite — записываем «цифру»

High — высокий

Low — низкий

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

Delay — задержка в миллисекундах.

Ну и потом добавляем еще 4 эффекта. Я покажу только конец программы, то есть 5-ый эффект, чтобы вы увидели, что цикл void loop должен закрываться фигурной скобочкой:

Гирлянда на Arduino

Прошиваем в железе

Ну а теперь дело за малым. Прошиваем нашу Arduino в реальности! Все это дело соберем вот по такой схемке:

Гирлянда на Arduino

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

Примерно вот так все это будет выглядеть в живом виде:

Гирлянда на Arduino

Теперь берем кабель, который шел (а может быть и не шел) в комплекте с Arduino:

Гирлянда на Arduino

Один конец подключаем к Arduino, а другой конец — к компьютеру:

Гирлянда на Arduino

Запускаем нашу программку Arduino 1.6.7 и выбираем программку, которую будем зашивать. В нашем случае мы зашиваем программку из 5 светодиодов:

Гирлянда на Arduino

Далее убеждаемся, что наша плата Arduino Uno подружилась с компьютером. Смотрим, что говорит нам компьютер:

Гирлянда на Arduino

Ага, Arduino/Genino Uno. Все ОК.

Теперь убеждаемся, что COM-порт у нас выбран правильно. Смотрим в «Диспетчере устройств», на какой COM-порт встала наша Arduino:

Гирлянда на Arduino

Проверяем теперь в Arduino. Если не так, то ставим галочку на нужный порт. У меня галочка тоже стоит на COM8:

Гирлянда на Arduino

На а далее дело за малым. Скетч—->Загрузка:

Гирлянда на Arduino

Идет загрузка… ну а потом в окне сообщений можно увидеть, что все прошло благополучно:

Гирлянда на Arduino

Но самый лучший индикатор, который говорит нам о том, что загрузка прошла удачно — это сама плата Arduino, с мерцающими светодиодами по нашей программке. После прошивки она сразу же начнет работать по программе, которую мы залили ;-)

   

Прикрепляю файл нашего проекта, если кому будет интересно сделать то же самое, или на базе этой программы сделать новые световые эффекты. Вот также этот файл в текстовом формате (нажимаете на ссылку ПКМ и потом «сохранить объект как»). Кстати, Arduino Uno и другие виды Arduino вы всегда можете без проблем приобрести на Али. Выбирайте!

Добавить комментарий

Ваш e-mail не будет опубликован.