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

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
 
Нет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 4: Строка 4:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


{{Черновик}}
 


=waitFor()<ref>[https://processing.org/reference/libraries/io/GPIO_waitFor_.html processing.org - waitFor()]</ref>=
=waitFor()<ref>[https://processing.org/reference/libraries/io/GPIO_waitFor_.html processing.org - waitFor()]</ref>=
Строка 10: Строка 10:
==Класс==
==Класс==


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


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


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
.waitFor(pin, mode)
.waitFor(pin, mode)
.waitFor(pin, node, timeout)
.waitFor(pin, node, timeout)
Строка 37: Строка 37:
==Параметры==
==Параметры==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
pin – контакт, изменение значения на котором нужно ждать. Тип данных – int
pin – контакт, изменение значения на котором нужно ждать. Тип данных – int
mode – режим изменения значения. Возможные значения: CHANGE, FALLING и RISING. Тип данных – int
mode – режим изменения значения. Возможные значения: CHANGE, FALLING и RISING. Тип данных – 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.*;


Строка 96: Строка 96:
|Высота логотипа издателя для schemaNewsArticle=45
|Высота логотипа издателя для schemaNewsArticle=45
}}
}}
{{Навигационная таблица/Справочник языка Processing}}
{{Навигационная таблица/Портал/Processing}}

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


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



waitFor()[1]

Класс

GPIO

Обозначение

waitFor()

Описание

Ждет изменения значения на заданном входном контакте.

Параметр mode задает, какого именно события нужно ждать: при режиме FALLING функция будет ждать, когда значение HIGH на заданном контакте сменится на LOW, при режиме RISING – когда LOW сменится на HIGH, а при режиме CHANGE – когда произойдет любое из этих изменений.

Опциональный параметр timeout задает, сколько миллисекунд будет ждать функция. Если значение заданного контакта за это время не изменится, эта строчка выдаст исключение. Без параметра timeout функция будет ждать вечно – до тех пор, пока значение на заданном контакте не изменится согласно режиму, заданному в параметре mode.

Синтаксис

.waitFor(pin, mode)
.waitFor(pin, node, timeout)

Параметры

pin  контакт, изменение значения на котором нужно ждать. Тип данных  int
mode  режим изменения значения. Возможные значения: CHANGE, FALLING и RISING. Тип данных  int
timeout  время ожидания (в миллисекундах). Тип данных  int

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

void

Пример

import processing.io.*;

void setup() {
  GPIO.pinMode(4, GPIO.OUTPUT);
  GPIO.pinMode(5, GPIO.INPUT);

  // активируем сброс внешнего устройства,
  // подключенного к контакту GPIO4: 
  GPIO.digitalWrite(4, GPIO.HIGH);

  // ждем, когда внешнее устройство просигналит, что оно готово,
  // подав на контакт GPIO5 значение HIGH:
  GPIO.waitFor(5, GPIO.RISING, 1000);
  // если это займет более 1000 мс, будет вызвано исключение

  // еще один вариант применения функции ожидания – 
  // с бесконечным ожиданием нужного изменения:
  GPIO.waitFor(5, GPIO.RISING);

  // ...
}

См.также

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