Функция pinMode в Ардуино

СОДЕРЖАНИЕ ►
Функция pinMode() Arduino IDE устанавливает режим работы заданного пина, как входа или выхода. Цифровой пин Ардуино может находиться в двух состояниях. В режиме входа пин считывает напряжение от 0 до 5 Вольт, а в режиме выхода – выдавать на пине такое же напряжение. Режим работы пина микроконтроллера выбирается при помощи функции pinMode(pin, mode), где pin это номер пина, а mode это режим.
pinMode Arduino IDE описание
Arduino pinMode OUTPUT (пины настроены как выход)
OUTPUT (порт работает как выход) — пин становится управляемым источником питания с максимальным током 40 мА. В зависимости от команды digitalWrite() пин принимает значение единицы или нуля. Пример: pinMode (10, OUTPUT);
Функция digitalWrite() и analogWrite()
Цифровой пин Ардуино может генерировать цифровой сигнал с помощью команды digitalWrite(), т.е. выдавать напряжение 5 Вольт. Цифровой сигнал может иметь два значения — 0 или 1 (0 Вольт или 5 Вольт). Если в программе используется команда analogWrite() для ШИМ портов платы, то микроконтроллер может генерировать сигнал PWM Arduino на портах — создавать имитацию аналогового сигнала.
void setup() { pinMode(10, OUTPUT); } void loop() { digitalWrite(10, HIGH); delay(250); digitalWrite(10, LOW); delay(250); }
К пинам ардуино нельзя подключать устройства, потребляющие ток более 40 мА, так как основное назначение микроконтроллера — это управления другими устройствами при помощи логических сигналов. Если к пину подключить устройство, потребляющее ток больше указанного значения, то пин может выгореть. Поэтому к выводам микроконтроллера Ардуино не следует подключать ничего мощнее светодиода.
Arduino pinMode INPUT (пины настроены как вход)
INPUT (порт работает как вход) — пин в этом режиме считывает данные с аналоговых и цифровых датчиков, состояния кнопок. Порт находится в высокоимпедансном состоянии, т.е. у пина высокое сопротивление. Пример: pinMode (10, INPUT);
Функция digitalRead() и analogRead()
Arduino может определить наличие напряжения на пине через функцию digitalRead(), которая возвращает 0 (LOW) или 1 (HIGH). Существует разница между цифровым датчиком (который обнаруживает включение/выключение) и аналоговым датчиком, значение которого постоянно изменяется. Используя функцию analogRead(), можно прочитать напряжение с аналогового датчика, функция возвращает число от 0 до 1023.
void setup() { pinMode(10, INPUT); Serial.begin(9600); } void loop() { int data = digitalRead(10); Serial.println(data); delay(250); }
Нельзя подавать на вход микроконтроллера напряжение выше напряжения питания платы. Кроме того, для аналоговых выводов Ардуино можно использовать команды digitalRead() и digitalWrite(). В этом случае аналоговые порты будут считывать (digitalRead) или выдавать (digitalWrite) цифровой, а не аналоговый сигнал.
Arduino pinMode INPUT_PULLUP
INPUT_PULLUP (порт работает как вход) но к пину подключается резистор в 20 кОм. В этом режиме при подключении кнопки к Ардуино можно не использовать внешние подтягивающие резисторы. Пример: pinMode (10, INPUT_PULLUP);
Подборка на тему: Функция pinMode в Ардуино
- Конкурс «Ученые будущего 2018»
- Подключение потенциометра к Ардуино
- Монитор порта Ардуино: команды
- Алгоритмы в робототехнике
Добавить комментарий