цифровая электроника
вычислительная техника
встраиваемые системы

 

Цифровые порты Arduino для чайников

Автор: Mike(admin) от 16-07-2017, 20:25

Цифровые линии ввода/вывода Arduino


Цифровые входы и выходы на Arduino – это то, что позволяет подключать датчики, исполнительные механизмы и другие микросхемы и модули к Arduino. Изучение того, как их использовать, позволит вам задействовать Arduino для выполнения некоторых действительно полезных вещей, таких как считывание входов переключателя, активации индикаторов и управления релейными выходами.


Цифровые сигналы


В отличие от аналоговых сигналов, которые могут принимать любое значение в определенном диапазоне, цифровые сигналы имеют лишь два разных значения: высокое логическое состояние HIGH (1) или низкое логическое состояние LOW (0). Эти цифровые сигналы применяются в ситуациях, когда вход или выход будет иметь одно из этих двух значений. Например, одним из способов использования цифрового сигнала является включение или выключение светодиода.


Функции работы с цифровыми портами Arduino


Функции Arduino, связанные с цифровыми линиями, которые мы будем использовать в данном материале, следующие: pinMode(), digitalRead(), digitalWrite().


Функция pinMode (pin_number, mode): Поскольку цифровые линии Arduino могут использоваться для ввода или вывода, вы должны сначала сконфигурировать контакты, которые вы собираетесь использовать для цифрового ввода-вывода. Здесь pin_number это номер контакта, который вы хотите настроить. Режим mode должен принимать одно из трех значений: INPUT, OUTPUT, INPUT_PULLUP. Когда для режима установлено значение INPUT_PULLUP, подтягивающий резистор 20 КОм внутренне подключен к выходу, чтобы заставить вход быть в состоянии HIGH, если ничего не подключено к линии.


Функция digitalWrite(pin_number,value): Эта функция записывает цифровое значение в регистр линии. Аргумент pin_number определяет номер этой линии, а value это выходное значение, то есть HIGH или LOW.


Функция digitalRead(pin_number): Эта функция считывает цифровое значение с линии под номером pin_number. Она возвращает одно из двух значений: HIGH или LOW.


Эксперимент 1: мигаем светодиодом с помощью цифровых линий Arduino


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


Цифровые порты Arduino для чайников

Как показано на рисунке, светодиод подключается к цифровому выводу 8 платы Arduino Uno через резистор 220 Ом. Резистор ограничивает ток, протекающий через светодиод. В приведенной ниже программе сначала вывод 8 настраивается на выход OUTPUT, а затем устанавливает в состояние HIGH в течение 1000 мс, а затем в LOW в течение еще 1000 мс.



const int led  =  8;
void setup()
{
pinMode(led,OUTPUT);
}

void loop()
{
   delay(1000);
   digitalWrite(led,HIGH);
   delay(1000);
   digitalWrite(led,LOW);
}

Эксперимент 2: управляем светодиодом нажатием кнопки


Этот эксперимент не только демонстрирует, как использовать цифровой выход, но и цифровой вход. При нажатии кнопки, подключенной к цифровому входу, включается или выключается светодиод. В программе используются функции digitalWrite() и digitalRead(). Схема подключения представлена ниже.


Цифровые порты Arduino для чайников

Как видно из рисунка выше, мы теперь используем два цифровых ввода-вывода Arduino. Светодиод подключается к контакту 8, который сконфигурирован как OUTPUT. К контакту 9 подключена кнопка, которая настроена как INPUT. Когда кто-то нажимает этот кнопочный выключатель, контакт 9 устанавливается в HIGH, и программа затем устанавливает вывод 8 в HIGH и включает светодиод. Отпускание кнопки сбрасывает вывод 9 в LOW. Затем программа устанавливает вывод 8 в LOW, что отключает светодиод. Код (скетч) представлен ниже.



const int led    =   8;
const int button =   9;
void setup()
{
pinMode(led,OUTPUT);
pinMode(button,INPUT);
}
void loop()
{
   int reads = digitalRead(button);
   digitalWrite(led,reads);
}



© digitrode.ru


Теги: Arduino



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

Комментарии:

Оставить комментарий