Processing:Библиотеки/Hardware I/O/Класс GPIO/pinMode(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
 
Строка 10: Строка 10:
==Класс==
==Класс==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
GPIO
GPIO
</syntaxhighlight>
</syntaxhighlight>
Строка 16: Строка 16:
==Обозначение==
==Обозначение==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
pinMode()
pinMode()
</syntaxhighlight>
</syntaxhighlight>
Строка 32: Строка 32:
==Синтаксис==
==Синтаксис==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
.pinMode(pin, mode)
.pinMode(pin, mode)
</syntaxhighlight>
</syntaxhighlight>
Строка 38: Строка 38:
==Параметры==
==Параметры==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
pin – номер входного/выходного контакта общего назначения. Тип данных – int
pin – номер входного/выходного контакта общего назначения. Тип данных – int
mode – режим, который нужно задать для контакта. Доступные значения: INPUT, INPUT_PULLUP, INPUT_PULLDOWN и OUTPUT. Тип данных – int
mode – режим, который нужно задать для контакта. Доступные значения: INPUT, INPUT_PULLUP, INPUT_PULLDOWN и OUTPUT. Тип данных – int
Строка 45: Строка 45:
==Возвращаемое значение==
==Возвращаемое значение==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
void
void
</syntaxhighlight>
</syntaxhighlight>
Строка 51: Строка 51:
==Пример==
==Пример==


<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
import processing.io.*;
import processing.io.*;



Текущая версия от 11:54, 20 мая 2023


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



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);
}

См.также

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