Processing:Библиотеки/Hardware I/O/Класс GPIO/pinMode()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску


Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.



pinMode()[1]

Класс

GPIO

Обозначение

pinMode()

Описание

Задает то, в каком режиме будет работать контакт – либо во входном (INPUT), либо во входном со встроенным подтягивающим резистором (INPUT_PULLUP), либо во входном со встроенным стягивающим резистором (INPUT_PULLDOWN), либо в выходном (OUTPUT).

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

Подтягивающие и стягивающие резисторы полезны при подключении кнопок и переключателей, т.к. они подтягивают значение контакта к заданному электрическому состоянию, когда к этому контакту ничего не подключено. В противном случае значение контакта будет «плавать».

В данный момент возможность задать (и убрать) подтягивающие и стягивающие резисторы есть только для Raspberry Pi, на которой установлен дистрибутив Raspbian. На других системах будет показано предупреждение.

Синтаксис

.pinMode(pin, mode)

Параметры

pin  номер входного/выходного контакта общего назначения. Тип данных  int
mode  режим, который нужно задать для контакта. Доступные значения: INPUT, INPUT_PULLUP, INPUT_PULLDOWN и OUTPUT. Тип данных  int

Возвращаемое значение

void

Пример

import processing.io.*;

// На Raspberry Pi контакт GPIO4 – это 7 контакт на гребешке контактов

void setup() {
  // режим INPUT_PULLUP включает встроенный подтягивающий резистор
  // для этого контакта; его значение будет считано как HIGH;
  // если подключить его к «земле» (через кнопку или переключатель),
  // его значение будет считано как LOW:
  GPIO.pinMode(4, GPIO.INPUT_PULLUP);
}

void draw() {
  if (GPIO.digitalRead(4) == GPIO.LOW) {
    // кнопка нажата:
    fill(255);
  } else {
    // кнопка не нажата:
    fill(204);
  }
  stroke(255);
  ellipse(width/2, height/2, width*0.75, height*0.75);
}

См.также

Внешние ссылки