Функция GPIO_OpenAsOutput
Заголовок: #include <applibs/gpio.h>
Открывает GPIO (общего назначения входные и выходные данные) в качестве выходных данных.
Выходной GPIO может быть настроен как push-pull, открытый слив или открытый код. Вызовите GPIO_SetValue в открытой выходной GPIO, чтобы задать выходное значение. Вы также можете вызвать GPIO_GetValue в открытом выходном GPIO для чтения текущего значения (например, если выходной GPIO настроен как GPIO_OutputMode_OpenDrain или GPIO_OutputMode_OpenSource).
Функции GPIO являются потоковобезопасными между вызовами разных объектов GPIOS; однако вызывающий объект отвечает за обеспечение безопасности потока для доступа к тому же GPIO.
int GPIO_OpenAsOutput(GPIO_Id gpioId, GPIO_OutputMode_Type outputMode, GPIO_Value_Type initialValue);
Параметры
gpioId
GPIO_Id, идентифицирующий GPIO.outputMode
Режим вывода GPIO. Выходные данные могут быть настроены как push-pull, open drain или открытый код.initialValue
Начальная GPIO_Value для GPIO — GPIO_Value_High или GPIO_Value_Low.
Ошибки
Возвращает значение -1 при обнаружении ошибки и задает errno
значение ошибки.
EACCES: доступ к
gpioId
не разрешен, так как GPIO не указан в поле Gpio манифеста приложения.EBUSY:
gpioId
объект уже открыт.ENODEV:
gpioId
недопустимо.EINVAL:
outputMode
не является допустимым GPIO_OutputMode илиinitialValue
не является допустимым GPIO_Value.
Можно также указать любой другой errno
. Такие ошибки не являются детерминированными, и такое же поведение может не сохраняться при обновлении системы.
Возвращаемое значение
Возвращает дескриптор файла для открытого GPIO при успешном выполнении или -1 для сбоя. В этом случае errno
будет задано значение ошибки.
Требования к манифесту приложения
Чтобы получить доступ к отдельным GPIOS, приложение должно идентифицировать их в поле Gpio манифеста приложения.