GPIO_OutputMode Enum
Header: #include <applibs/gpio.h>
De opties voor de uitvoermodus van een GPIO.
De uitvoerwaarde van een GPIO wordt ingesteld door de functie GPIO_SetValue .
typedef enum {
GPIO_OutputMode_PushPull = 0,
GPIO_OutputMode_OpenDrain = 1,
GPIO_OutputMode_OpenSource = 2
} GPIO_OutputMode;
Waarden
GPIO_OutputMode_PushPull
Configureert de GPIO-uitvoerpin zodanig dat deze de huidige waarde zinkt wanneer deze laag wordt gestuurd en de bronstroom wanneer deze hoog wordt aangedreven. Het gedrag wordt samengevat in de volgende tabel:
GPIO-uitvoerwaarde | GPIO-uitvoer aangestuurd als |
---|---|
GPIO_Value_Low | Logische status 0, huidige sink |
GPIO_Value_High | Logische status 1, huidige bron |
Gebruik deze modus wanneer één unidirectionele interface, zoals SPI of UART, is verbonden met de GPIO-uitvoerpin. Deze modus staat niet toe dat meerdere apparaten met elkaar worden verbonden in een busconfiguratie.
GPIO_OutputMode_OpenDrain
Configureert de GPIO-uitvoerpin zodanig dat deze de huidige waarde zinkt wanneer deze laag wordt gestuurd; kan niet als bronbron worden opgehaald. Het gedrag wordt samengevat in de volgende tabel:
GPIO-uitvoerwaarde | GPIO-uitvoer aangestuurd als |
---|---|
GPIO_Value_Low | Logische status 0, huidige sink |
GPIO_Value_High | Hoge impedantie (of logische status 1, met externe optrekweerstand) |
Gebruik deze modus wanneer meerdere bidirectionele interfaces, zoals I2C, zijn verbonden met de GPIO-uitvoerpin in een busconfiguratie. Wanneer alle uitgangen van de verbonden interfaces een hoge impedantiestatus hebben, kan de GPIO-uitvoerpin worden gestuurd naar een logische 1 met een externe optrekweerstand. Elk van de verbonden interfaces kan de lijn naar logica 0 trekken met behulp van de open-drain-uitvoer.
GPIO_OutputMode_OpenSource
Configureert de GPIO-uitvoerpin zodanig dat deze de huidige bron bij hoog rijden; het kan de huidige niet laten zinken. Het gedrag wordt samengevat in de volgende tabel:
GPIO-uitvoerwaarde | GPIO-uitvoer aangestuurd als |
---|---|
GPIO_Value_Low | Hoge impedantie (of logische status 0, met externe pull-down weerstand) |
GPIO_Value_High | Logische status 1, huidige bron |
Er is geen bekend gebruik voor deze modus, maar deze is beschikbaar voor degenen die deze willen gebruiken.