Arduino:Справочник языка Arduino/Библиотеки/Wire/write(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{Arduino панель перехода}} | {{Arduino панель перехода}} | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} |
Версия от 11:26, 8 июля 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция Wire.write()[1]
Передает данные от ведомого устройства к ведущему в ответ на запрос. Также используется в связке с функциями beginTransmission() и endTransmission() — write() вызывается между ними и формирует очередь байтов для последующей передачи данных от ведущего устройства к ведомому.
Синтаксис
Wire.write(value)
Wire.write(string)
Wire.write(data, length)
Параметры
value — значение, отправляемое в виде одного байта
string — строка, отправляемое в виде серии байтов
data — массив данных, отправляемый в виде серии байтов
length — количество передаваемых байтов
Что возвращает
Количество переданных байтов. Считывание этих байтов — опционально.
Пример
#include <Wire.h>
byte val = 0;
void setup()
{
Wire.begin(); // подключаем шину i2c
}
void loop()
{
Wire.beginTransmission(44); // передаем данные девайсу с адресом #44 (0x2c)
// адрес девайса указан в даташите
Wire.write(val); // отправляем байт с необходимым значением
Wire.endTransmission(); // останавливаем передачу данных
val++; // увеличиваем значение
if(val == 64) // если достигли 64-ой позиции... (т.е. максимума)
{
val = 0; // ...начинаем с самого низкого значения
}
delay(500);
}
См.также
- WireRead()
- WireBeginTransmission()
- WireEndTransmission()
- Serial.write()