Операционная система ЗОСРВ «Нейтрино» > Руководство разработчика > Основные принципы системной разработки > Разработка драйверов и драйверные библиотеки > Драйверные библиотеки > Библиотека разработки I²C драйверов (libi2c-master) > DEVCTL-команды > DCMD_I2C_MASTER_RECV



DCMD_I2C_MASTER_RECV

Выполнить чтение из slave устройства, используя его адрес и скорость шины

Прототип:

#include <hw/i2c.h>
#define DCMD_I2C_MASTER_RECV __DIOTF( _DCMD_I2C, 4, i2c_masterhdr_t )

Аргументы:

filedes
Дескриптор файла, полученный при открытии устройства.
dcmd
DCMD_I2C_MASTER_RECV.
dev_data_ptr
Указатель на структуру i2c_masterhdr_t.
n_bytes
Размер структуры i2c_masterhdr_t, полученный с помощью sizeof().
dev_info_ptr
NULL.

Библиотека:

libi2c-master

Описание:

Команда используется в сочетании с вызовом devctl(), а все перечисленные аргументы являются его типовыми параметрами. Команда выполняет чтение из slave устройства, используя его адрес и скорость шины, указанные для текущего соединения.

Исходящие данные:

uint8_t[] - указатель на буфер с принятыми данными.


Note: Заголовок сообщения перезаписывается.

Входящие данные:

i2c_masterhdr_t - заголовок сообщения.

Коды ошибок:

EIO
Не удалось выполнить чтение. Причины: неверный адрес slave устройства, неверная скорость шины, шина занята.
EINVAL
Неправильный формат сообщения.
ENOMEM
Недостаточно памяти.
EPERM
Ведущий заблокирован другим соединением.

Классификация:

ЗОСРВ «Нейтрино»

Тематические ссылки:

devctl(), i2c_masterhdr_t




Предыдущий раздел: Библиотека разработки I²C драйверов