Share via


GPIO_OutputMode Sabit Listesi

Üst bilgi: #include <applibs/gpio.h>

GPIO'nun çıkış modu seçenekleri.

GPIO'nun çıkış değeriGPIO_SetValue işlevi tarafından ayarlanır.

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

Değer

GPIO_OutputMode_PushPull

GPIO çıkış pin'ini düşük ve kaynaklar yüksek yönlendirildiğinde geçerli olacak şekilde yapılandırır. Davranış aşağıdaki tabloda özetlenmiş:

GPIO çıkış değeri GPIO çıkış temelli olarak
GPIO_Value_Low Mantıksal durum 0, geçerli havuz
GPIO_Value_High Mantıksal durum 1, geçerli kaynak

SPI veya UART gibi tek yönlü bir arabirim GPIO çıkış pin'ine bağlı olduğunda bu modu kullanın. Bu mod, bir veri yolu yapılandırmasında birden çok cihazın birbirine bağlanmasına izin vermez.

GPIO_OutputMode_OpenDrain

GPIO çıkış pin'ini düşük olduğunda geçerli olacak şekilde yapılandırır; kaynak geçerli olamaz. Davranış aşağıdaki tabloda özetlenmiş:

GPIO çıkış değeri GPIO çıkış temelli olarak
GPIO_Value_Low Mantıksal durum 0, geçerli havuz
GPIO_Value_High Yüksek empedans (veya harici çekme direnci ile mantıksal durum 1)

I2C gibi birden çok çift yönlü arabirim bir veri yolu yapılandırmasındaki GPIO çıkış pin'ine bağlandığında bu modu kullanın. Bağlı arabirimlerin tüm çıkışları yüksek empedans durumunda olduğunda, GPIO çıkış pini harici bir çekme direncine sahip bir mantık 1'e yönlendirilebilir. Bağlı arabirimlerden herhangi biri, açık boşaltma çıkışını kullanarak hattı 0 mantığına çekebilir.

GPIO_OutputMode_OpenSource

GPIO çıkış pin'ini yüksek bir değere yönlendirildiğinde geçerli olacak şekilde yapılandırır; geçerli havuza alamaz. Davranış aşağıdaki tabloda özetlenmiş:

GPIO çıkış değeri GPIO çıkış temelli olarak
GPIO_Value_Low Yüksek empedans (veya harici aşağı çekme direnci ile mantıksal durum 0)
GPIO_Value_High Mantıksal durum 1, geçerli kaynak

Bu mod için iyi bilinen bir kullanım yoktur, ancak kullanmak isteyenler için kullanılabilir.