- Библиотеки
- Операторы
- Sketch
- Управляющие операторы
- Синтаксис
- Арифметические операторы
- Операторы сравнения
- Логические операторы
- Указатели доступа
- Битовые операторы
- Составные операторы
- Данные
- Типы данных
- Преобразование типов данных
- Область видимости переменных и квалификаторы
- Утилиты
- Функции
- Цифровой ввод/вывод
- Аналоговый вход/выход
- Расширенный ввод/вывод
- Время
- Математические функции
- Тригонометрические функции
- Символы
- Случайные числа
- Биты и байты
- Внешние Прерывания
- Прерывания
- Функции передачи данных
- Wire.requestFrom()
- Функции
Wire.requestFrom()
Описание
Используется ведущим устройством для запроса байтов у ведомого устройства. После этого файлы можно извлечь при помощи функций available() и read().
Начиная с Arduino 1.0.1, функция requestFrom() принимает булевы аргументы, которые меняют ее поведение для совместимости с определенными I2C-устройствами.
Если выставить true, то requestFrom() после запроса отправит стоп-сообщение, тем самым освободив шину I2C для других действий.
Если выставить false, то requestFrom() после запроса отправит перезапускающее сообщение. В итоге шина не освободится, что помешает другому ведущему устройству сделать запрос между сообщениями. Благодаря этому одно ведущее устройство может отправлять несколько запросов подряд.
По умолчанию стоит аргумент true.
Синтаксис
Wire.requestFrom(address, quantity)
Wire.requestFrom(address, quantity, stop)
Параметры
address: 7-битный адрес устройства, у которого будут запрошены байты
quantity: количество запрашиваемых байтов
stop: true или false. true отправит стоп-сообщение после запроса, освобождая шину. False будет постоянно отправлять перезапуск после запроса, сохраняя соединение активным.
Возвращаемые значения
Количество байтов, возвращенных от ведомого устройства. (byte)