Операционная система ЗОСРВ «Нейтрино» > Руководство разработчика > Основные принципы системной разработки > Разработка драйверов и драйверные библиотеки > Драйверные библиотеки > Библиотека разработки SPI драйверов (libspi-master) > API библиотеки > spi_write()



spi_write()

Записать данные на устройство.

Прототип:

#include <hw/spi-master.h>
int spi_write( int fd,
uint32_t device,
void *buf,
int len );

Аргументы:

fd
Дескриптор файла, который вернула функция spi_open().
device
Идентификатор устройства с не более чем одним из следующих флагов, опционально объединенных (см. spi_cmdread() поле device).
buf
Указатель на буфер для записи.
len
Длина, в байтах, данных, которые необходимо записать.

Библиотека:

libspi-master

Описание:

Функция записывает данные на конкретное устройство на шине SPI. Драйвер SPI обычно считает ошибкой ситуацию, когда количество байт, возвращаемых этой функцией, не совпадает с количеством байт, которые он попросил функцию записать.

Возвращаемое значение:

nbytes
Количество успешно записанных на устройство байт.
-1
Произошла ошибка, код ошибки записывается в errno.

Коды ошибок:

EIO
Запись на устройство не удалась, или произошла аппаратная ошибка.
EINVAL
Идентификатор устройства недействителен, или вы пытаетесь разблокировать устройство, которое не заблокировано.
ENOMEM
Недостаточно памяти.
EPERM
Устройство заблокировано другим подключением.

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

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

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да

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

spi_open(), errno




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