Доброго времени суток всем тем кто читает эту статью. Мы будем говорить об Arduino Uno и я проведу маленький урок на примере одного «устройства» — полоска с мигающими светодиодами (два разных алгоритма). Сразу скажу, кто не знал, программировать на Arduino надо на С++ (Cpp).
С помощью Arduino можно не только учиться, но и создавать разные приборы, вещи, игрушки, гаджеты и многое другое. Но для этого понадобятся дополнительные комплектующие, детали и провода, корпус или что то на подобие, время, силы и конечно знания.
Для занятия нам понадобятся специальная программа Arduino (установить на компьютер) и комплект деталей и контрольная плата Arduino Uno (их можно заказать на АлиЭкспрес). Приступим.
Как вы видите на картинке подключены 2 светодиода. По принципу подключаем 8 таких светодиодов, с резисторами на 220 Ом (иначе светодиоды сгорят). Подключите 1-вый светодиод от вас ко 2-ому порту, а дальше по примеру с 2-ого по 9-ий порты: 2-ой к 3-ему, 3-ий к 4-ому…
И так у нас есть 8 портов которые мы обозначаем через OUTPUT (выход):
void setup(){
pinMode(2, OUTPUT); //объявляем порты на выдачу
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
Можно тоже самое сделать и через цикл for:
void setup(){
for( int =2; i<=9; i++){ // i равно 2, и каждый раз когда кончается и начинается цикл,
// i увеличивается на 1,
pinMode(i, OUTPUT); //объявляем порт номер которого обозначается через i на выдачу (наружу)
} // и цикл будет работать пока i будет меньше или равняться 9.
}
И в итоге оба void setup будут верные, но разумней использовать 2-ой вариант.
Напишем void loop(), там будет код который контролирует подачу тока на наши порты, и опять мы сделаем всё через цикл заменив долгий копи паст и замену чисел:
void loop(){
for( int i=2; i<=9; i++){ // наш цикл
digitalWrite(i,HIGH);// подача тока (функция HIGH) на порт номер которого обозначен через i
delay(500); //задержка выполнения кода на 0,5 сек.
digitalWrite(i,LOW); // прекращение подачи тока (функция LOW) на порт номер которого
} //обозначен через i
}
С помощью специального кабеля подключаем плату Arduino к USB порту на компьютере, запускаем код, и если не получается, то войдите в Tools и начните пробовать настроить подключение на другие порты, ведь программа может начать загружать в клавиатуру или в мышь и эффекта не будет. И вот мы видим полоску с бегающим огоньком! А если вы хотите чтобы он двигался медленнее или быстрее, то увеличите или уменьшите задержку.
А теперь приступим ко второму алгоритму под названием «бегущая тень». Суть идеи в том чтобы все светодиоды были включены а теню бегала туда и назад.
В void setup() мы опять 8 портов обозначаем через OUTPUT, как и в первый раз. Пишем void loop():
void loop(){
for( int i=2; i<=9; i++){ // наш цикл
digitalWrite(i,HIGH);// подача тока(функция HIGH) на на порт номер которого обозначен через i
} // все светодиоды горят.
for( int i=2; i<=9; i++){ //цикл
digitalWrite(i,LOW); // прекращение подачи тока (функция LOW) на на порт номер которого
//обозначен через i
delay(500); //задержка выполнения кода на 0,5 сек.
digitalWrite(i,HIGH);// подача тока (функция HIGH) на на порт номер которого обозначен через i
}
}
И вот мы закончили со светодиодами, а следующей схеме в моей следующей статье. В следующей статье мы будем говорить снова об Arduino Uno. Спасибо за то что прочли мою первую статью.
Автор: бро