Бөлісу құралы:


Перечисление GPIO_OutputMode

Заголовок: #include <applibs/gpio.h>

Параметры режима вывода GPIO.

Выходное значение GPIO задается функцией GPIO_SetValue.

typedef enum {
    GPIO_OutputMode_PushPull = 0,
    GPIO_OutputMode_OpenDrain = 1,
    GPIO_OutputMode_OpenSource = 2
} GPIO_OutputMode;

Значения

GPIO_OutputMode_PushPull

Настраивает выходной контакт GPIO таким образом, чтобы он поглонял текущий при низком уровне и источник при высоком уровне. Поведение описано в следующей таблице:

Выходное значение GPIO Выходные данные GPIO, управляемые как
GPIO_Value_Low Состояние логики 0, текущий приемник
GPIO_Value_High Состояние логики 1, текущий источник

Используйте этот режим, если к выходному контакту GPIO подключен один однонаправленный интерфейс, например SPI или UART. В этом режиме не допускается подключение нескольких устройств в конфигурации шины.

GPIO_OutputMode_OpenDrain

Настраивает выходной контакт GPIO таким образом, чтобы он поглонял текущий при низком уровне; не может быть источником текущего. Поведение описано в следующей таблице:

Выходное значение GPIO Выходные данные GPIO, управляемые как
GPIO_Value_Low Состояние логики 0, текущий приемник
GPIO_Value_High Высокий импедор (или состояние логики 1 с внешним резистором подтягивания)

Используйте этот режим, если несколько двунаправленных интерфейсов, таких как I2C, подключены к выходному контакту GPIO в конфигурации шины. Когда все выходные данные подключенных интерфейсов находятся в состоянии высокого импедаса, выходной контакт GPIO можно привести в логику 1 с внешним резистором подтягивания. Любой из подключенных интерфейсов может вытянуть линию к логике 0 с помощью выходных данных с открытым сливом.

GPIO_OutputMode_OpenSource

Настраивает выходной контакт GPIO таким образом, чтобы он источник текущего при высоком уровне; он не может поглотить текущий. Поведение описано в следующей таблице:

Выходное значение GPIO Выходные данные GPIO, управляемые как
GPIO_Value_Low Высокий импедор (или состояние логики 0, с внешним резистором вниз)
GPIO_Value_High Состояние логики 1, текущий источник

Этот режим не используется, но он доступен для тех, кто хочет его использовать.