Dela via


funktionen GPIO_OpenAsOutput

Sidhuvud: #include <applibs/gpio.h>

Öppnar en GPIO (Generell användning indata/utdata) som ett utdata.

En GPIO-utgång kan konfigureras som push-pull, open drain eller öppen källkod. Anropa GPIO_SetValue på en GPIO för öppen utdata för att ange utdatavärdet. Du kan också anropa GPIO_GetValue på en GPIO med öppen utdata för att läsa det aktuella värdet (till exempel när gpio-utdata har konfigurerats som GPIO_OutputMode_OpenDrain eller GPIO_OutputMode_OpenSource).

GPIO-funktioner är trådsäkra mellan anrop till olika GPIOs. men det är uppringarens ansvar att säkerställa trådsäkerhet för åtkomst till samma GPIO.

int GPIO_OpenAsOutput(GPIO_Id gpioId, GPIO_OutputMode_Type outputMode, GPIO_Value_Type initialValue);

Parametrar

  • gpioId En GPIO_Id som identifierar GPIO.

  • outputMode Utdataläget för GPIO. Ett utdata kan konfigureras som push-pull, open drain eller öppen källkod.

  • initialValue Den första GPIO_Value för GPIO - GPIO_Value_High eller GPIO_Value_Low.

Fel

Returnerar -1 om ett fel uppstår och anger errno felvärdet.

  • EACCES: åtkomst till gpioId tillåts inte eftersom GPIO inte visas i fältet Gpio i programmanifestet.

  • EBUSY: är gpioId redan öppen.

  • ENODEV: är gpioId ogiltigt.

  • EINVAL: outputMode är inte en giltig GPIO_OutputMode eller initialValue är inte en giltig GPIO_Value.

errno Andra kan också anges, sådana fel är inte deterministiska och samma beteende kanske inte behålls via systemuppdateringar.

Returvärde

Returnerar en filbeskrivning för den öppnade GPIO vid lyckat försök, eller -1 för fel, i vilket fall errno anges till felvärdet.

Krav för programmanifest

För åtkomst till enskilda GPIOs måste programmet identifiera dem i fältet Gpio i programmanifestet.