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



i2c_master_getfuncs()

Заполнить таблицу функциями, специфичными для оборудования

Прототип:

#include <hw/i2c.h>
int i2c_master_getfuncs( i2c_master_funcs_t *funcs,
int tabsize );

Аргументы:

funcs
Таблица функций для заполнения. Библиотека инициализирует эту таблицу перед вызовом данной функции. Если вы не реализовали функцию в таблице, оставьте ее запись без изменений; не устанавливайте ее в NULL. Она должна быть реализована.
tabsize
Размер структуры, на которую указывает funcs, в байтах.

Note: Не меняйте size в структуре i2c_master_funcs_t.

Чтобы установить запись в таблице, используйте макрос I2C_ADD_FUNC():
#include <hw/i2c.h>
#define I2C_ADD_FUNC(tabletype, table, entry, func, tabsize) …
Пример:
I2C_ADD_FUNC( i2c_master_funcs_t, funcs, init, my_init, tabsize);

Библиотека:

libi2c-master

Описание:

Функция должна заполнить данную таблицу функциями, специфичными для оборудования. Эта функция используется кодом более высокого уровня (например, интерфейсом менеджера ресурсов) для доступа к функциям, специфичным для аппаратного обеспечения. Она должна быть реализована.

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

0
Успешное завершение.
-1
Возникла ошибка.

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

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

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

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

Обзор библиотеки I²C, i2c_master_funcs_t, devctl()




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