enumeração GPIO_OutputMode
Cabeçalho: #include <applibs/gpio.h>
As opções para o modo de saída de um GPIO.
O valor de saída de um GPIO é definido pela função GPIO_SetValue .
typedef enum {
GPIO_OutputMode_PushPull = 0,
GPIO_OutputMode_OpenDrain = 1,
GPIO_OutputMode_OpenSource = 2
} GPIO_OutputMode;
Valores
GPIO_OutputMode_PushPull
Configura o pin de saída GPIO de modo a que afunde a corrente quando orientada para baixo e as origens atuais quando orientadas para o nível elevado. O comportamento é resumido na seguinte tabela:
Valor de saída GPIO | Saída GPIO condicionada como |
---|---|
GPIO_Value_Low | Estado 0 da lógica, sink atual |
GPIO_Value_High | Estado 1 da lógica, origem atual |
Utilize este modo quando uma única interface unidirecional, como SPI ou UART, estiver ligada ao pino de saída GPIO. Este modo não permite que vários dispositivos sejam ligados em conjunto numa configuração de barramento.
GPIO_OutputMode_OpenDrain
Configura o pin de saída GPIO de modo a que afunde a corrente quando orientada para baixo; não é possível obter a corrente de origem. O comportamento é resumido na seguinte tabela:
Valor de saída GPIO | Saída GPIO condicionada como |
---|---|
GPIO_Value_Low | Estado 0 da lógica, sink atual |
GPIO_Value_High | Elevada impedância (ou estado lógico 1, com resistência de pull-up externa) |
Utilize este modo quando várias interfaces bidirecionais, como o I2C, estiverem ligadas ao pin de saída GPIO numa configuração de barramento. Quando todas as saídas das interfaces ligadas estão num estado de elevada impedância, o pino de saída GPIO pode ser conduzido a uma lógica 1 com uma resistência de pull-up externa. Qualquer uma das interfaces ligadas pode puxar a linha para a lógica 0 através da saída de drenagem aberta.
GPIO_OutputMode_OpenSource
Configura o pin de saída GPIO de modo a que este produza a corrente quando impulsionado para alto; não consegue afundar a corrente. O comportamento é resumido na seguinte tabela:
Valor de saída GPIO | Saída GPIO condicionada como |
---|---|
GPIO_Value_Low | Elevada impedância (ou estado lógico 0, com resistência externa para baixo) |
GPIO_Value_High | Estado 1 da lógica, origem atual |
Não existe uma utilização bem conhecida para este modo, mas está disponível para quem o pretenda utilizar.