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

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


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


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


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


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


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
.read(len)
.read(len)
</syntaxhighlight>
</syntaxhighlight>
Строка 34: Строка 34:
==Параметры==
==Параметры==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
len – количество байтов, которые нужно прочесть. Тип данных – int
len – количество байтов, которые нужно прочесть. Тип данных – int
</syntaxhighlight>
</syntaxhighlight>
Строка 40: Строка 40:
==Возвращаемое значение==
==Возвращаемое значение==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
Массив byte[].
Массив byte[].
</syntaxhighlight>
</syntaxhighlight>
Строка 46: Строка 46:
==Пример==
==Пример==


<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.*;
I2C compass;
I2C compass;
Строка 94: Строка 94:
|Высота логотипа издателя для schemaNewsArticle=45
|Высота логотипа издателя для schemaNewsArticle=45
}}
}}
{{Навигационная таблица/Справочник языка Processing}}
{{Навигационная таблица/Портал/Processing}}

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


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



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));
}

См.также

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