1.GPIO_PULLUP(上拉)
作用和原理
- 作用:上拉模式會在GPIO引腳和電源電壓(Vcc)之間連接一個內部上拉電阻。
- 原理:當引腳配置為輸入模式時,如果引腳沒有連接到其他外部電路,內部上拉電阻會將引腳的電壓拉到高電平(邏輯1)。
- 應用場景:
- 按鍵:按鍵通常與地(GND)連接,在未按下時需要上拉電阻將引腳拉到高電平。當按鍵按下時,引腳被拉低到低電平(邏輯0)。
- I2C總線:I2C通信需要數據線和時鐘線有上拉電阻,以確保總線空閑時處于高電平
2.GPIO_PULLDOWN(下拉)
作用和原理
- 作用:下拉模式會在GPIO引腳和地(GND)之間連接一個內部下拉電阻。
- 原理:當引腳配置為輸入模式時,如果引腳沒有連接到其他外部電路,內部下拉電阻會將引腳的電壓拉到低電平(邏輯0),
- 應用場景:
- 按鍵:按鍵通常與電源電壓(Vcc)連接,在未按下時需要下拉電阻將引腳拉到低電平。當按鍵按下時,引腳被拉高到高電平(邏輯1)。
- 未使用的引腳:為確保未使用的引腳處于已知狀態,防止其浮動引起干擾,可以將其配置為下拉模式。
3.GPIO_NOPULL(無上下拉)
作用和原理
- 作用:無上下拉模式意味著GPIO引腳沒有連接到任何內部上拉或下拉電阻。
- 原理:在這種模式下,引腳的狀態完全由外部電路決定。如果引腳未連接到任何外部電路,其電平可能會浮動,導致不可預測的行為。
- 應用場景:
- 模擬輸入:在使用ADC進行模擬輸入時,通常希望引腳沒有內部上下拉電阻,以避免影響模擬信號的準確性。
- 外部上拉/下拉:如果外部電路已經有合適的上拉或下拉電阻,則可以配置引腳為無上下拉模式。