Melyik ESP32 tűknek van felhúzása

Melyik Esp32 Tuknek Van Felhuzasa



Ha Ön az elektronika rajongója vagy az ESP32-vel dolgozó fejlesztő, valószínűleg hallott már a fel- és lehúzó ellenállásokról. Ezek az ellenállások biztosítják, hogy a digitális bemeneti érintkezőknek stabil logikai szintje legyen. Ebben a cikkben megvitatjuk, hogy az ESP32 mely érintkezői rendelkeznek beépített felhúzó ellenállással, és hogyan engedélyezhetőek.

A felhúzó ellenállások megértése

Mielőtt belemerülne az ESP32 felhúzócsapok sajátosságaiba, fontos megérteni a felhúzó ellenállások szerepét az áramkörben. Ha egy digitális bemeneti láb lebeg (nincs csatlakoztatva semmilyen feszültségforráshoz), véletlenszerű értékeket tud olvasni, megnehezítve a logikai szintjének meghatározását.

A probléma elkerülése érdekében egy felhúzó ellenállást kell csatlakoztatni a bemeneti érintkező és a feszültségforrás (általában Vcc) közé, hogy a bemenet alapértelmezés szerint magas (logikai 1) állapotot olvasson. Ha a bemenet alacsony (logikai 0) jelre van csatlakoztatva, az ellenállás lehúzza a bemenetet a földre, lehetővé téve a bemenet számára, hogy alacsony állapotot olvasson.







Beépített felhúzócsapok az ESP32-n

Az ESP32 mikrokontroller 34 általános célú bemeneti/kimeneti (GPIO) érintkezővel rendelkezik, amelyek digitális vagy analóg érintkezőkként konfigurálhatók. A 34 érintkező közül néhány érintkező beépített felhúzó ellenállással rendelkezik, amelyek szoftverrel engedélyezhetők.



A következő táblázat az ESP32 érintkezőit mutatja, amelyek beépített felhúzó ellenállással rendelkeznek:



Pinkód Pin név Beépített Pull-Up Ellenállás
0 GPIO0 Igen
2 GPIO2 Igen
4 GPIO4 Igen
5 GPIO5 Igen
12 GPIO12 Igen
13 GPIO13 Igen
14 GPIO14 Igen
tizenöt GPIO15 Igen
25 GPIO25 Igen
26 GPIO26 Igen
27 GPIO27 Igen
32 GPIO32 Igen
33 GPIO33 Igen
3. 4 GPIO34 Nem
35 GPIO35 Nem
36 GPIO36 Nem
39 GPIO39 Nem

Mint látható, az ESP32 digitális érintkezőinek többsége beépített felhúzó ellenállással rendelkezik. Azonban nem minden tű rendelkezik ezzel a funkcióval. A 34, 35, 36 és 39 érintkezőknek nincs beépített felhúzó ellenállása.





Jegyzet: Az ESP32-ben az integrált felhúzó és lehúzó ellenállások csak olyan érintkezőkben állnak rendelkezésre, amelyek támogatják a bemenetet és a kimenetet is. GPIO-k 34-39 , amelyek csak bemenetre korlátozódnak, nincsenek beépítve ezek az ellenállások.



Ellenőrizze a teljes ESP32 Pinout Reference .

Felhúzó ellenállások engedélyezése az ESP32-n

Az ESP32 tűn lévő felhúzó ellenállás engedélyezéséhez használhatja a gpio_set_pull_mode() az ESP-IDF keretrendszer által biztosított funkció.

Ennek a függvénynek két argumentuma van:

  • A GPIO PIN-kódja
  • A felhúzó üzemmód

A felhúzó mód bármelyik lehet GPIO_PULLUP_ENABLE vagy GPIO_PULLUP_DISABLE . Íme egy példakód, amely engedélyezi a felhúzó ellenállást a GPIO2-n:

#include 'driver/gpio.h'

üres enable_pull_up ( ) {

gpio_set_pull_mode ( GPIO_NUM_2 , GPIO_PULLUP_ENABLE ) ;

}

pinMode ( 5 , INPUT_PULLUP ) ;

Fontos megjegyezni, hogy a felhúzó ellenállás engedélyezése a tűn befolyásolja annak viselkedését, amikor a tűt kimenetként használják. Ebben az esetben a felhúzó ellenállás gyenge áramforrásként működik, és befolyásolhatja a kimeneti feszültség szintjét.

Alternatív megoldásként az ESP32 belső felhúzását is engedélyezhetjük a pinMode() Arduino funkció.

pinMode ( 5 , INPUT_PULLUP ) ;

A fenti kód engedélyezi a belső felhúzó ellenállást a tűn 5 . Hasonlóképpen engedélyezheti a belső legördülő ellenállást az üzemmód megadásával INPUT_PULLDOWN .

Következtetés

A felhúzó ellenállások a digitális áramkörök alapvető alkotóelemei, és az ESP32 mikrokontroller beépített felhúzó ellenállást biztosít a legtöbb digitális érintkezőn. Ezen ellenállások engedélyezése stabil logikai szintet biztosíthat, és elkerülheti a lebegő bemeneti problémákat. Fontos azonban megjegyezni, hogy az ESP32 nem minden érintkezője rendelkezik beépített felhúzó ellenállással, ezért fontos ellenőrizni a ESP32 kivezetés vagy adatlapon az áramkör tervezése előtt. Ezenkívül a felhúzó ellenállás engedélyezése befolyásolhatja a tű viselkedését, ha kimenetként használják.