Wire.write()
Описание
write() записывает данные с периферийного устройства в ответ на запрос от устройства-контроллера, либо ставит байты в очередь для передачи от контроллера к периферийному устройству (между вызовами beginTransmission() и endTransmission()).
Эта функция является частью библиотеки Wire. Подробнее см. на главной странице Wire.
Синтаксис
Wire.write(value)
Wire.write(string)
Wire.write(data, length)
Параметры
value: значение для отправки в виде одного байта. Допустимые типы данных:byte.string: строка для отправки в виде последовательности байтов. Допустимые типы данных:char*.data: массив данных для отправки в виде байтов. Допустимые типы данных:byte[].length: количество байтов для передачи. Допустимые типы данных:size_t.
Возвращаемое значение
Количество записанных байтов (считывание этого значения необязательно). Тип данных: size_t.
Пример кода
#include <Wire.h>
byte val = 0;
void setup() {
Wire.begin(); // Подключаемся к шине I2C
}
void loop() {
Wire.beginTransmission(44); // Передаём устройству с номером 44 (0x2C)
Wire.write(val); // Отправляем байт значения
Wire.endTransmission(); // Останавливаем передачу
val++; // Инкрементируем значение
// Если достигли 64-й позиции (максимум), начинаем заново с минимального значения
if (val == 64) {
val = 0;
}
delay(500);
}