Processing:Библиотеки/Hardware I/O/Класс I2C/read()
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
read()[1]
Класс
I2C
Обозначение
read()
Описание
Считывает байты с подключенного устройства.
Перед вызовом этой функции необходимо вызвать функцию beginTransmission(). Кроме того, read() играет роль функции endTransmission() – она завершает текущую коммуникацию и отправляет все данные, которые ранее были поставлены в очередь при помощи функции write(). После read() функцию endTransmission() вызывать необязательно.
Синтаксис
.read(len)
Параметры
len – количество байтов, которые нужно прочесть. Тип данных – int
Возвращаемое значение
Массив byte[].
Пример
import processing.io.*;
I2C compass;
void setup() {
//printArray(I2C.list());
compass = new I2C(I2C.list()[0]);
}
void draw() {
// при помощи интерфейса I2C считываем направление
// компас-модуля с адресом 33 (шестн. – 0x21):
compass.beginTransmission(0x21);
// сначала отсылаем командный байт:
compass.write(0x41);
// считываем два байта:
byte[] in = compass.read(2);
// объединяем байты и делим результат на 10;
// конструкция «& 0xff» нужна, чтобы байт
// не интерпретировался как отрицательное значение:
int deg = (in[0] & 0xff) << 8 | (in[1] & 0xff);
println((deg / 10.0));
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |