Урок 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. Дожидаемся сообщения «Загрузка завершена».

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

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


Обсудить статью на форуме

Рубрики: ArduinoСтатьи

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *