Millistel ESP32 tihvtidel on tõmbed

Millistel Esp32 Tihvtidel On Tombed



Kui olete elektroonikahuviline või ESP32-ga töötav arendaja, olete võib-olla kuulnud tõmbe- ja allatõmmatavatest takistitest. Need takistid tagavad, et digitaalsisendil on stabiilne loogikatase. Selles artiklis käsitleme, millistel ESP32 kontaktidel on sisseehitatud tõmbetakistid ja kuidas neid lubada.

Tõmbetakistite mõistmine

Enne ESP32 tõmbetihvtide eripäradesse sukeldumist on oluline mõista tõmbetakistite rolli vooluringis. Kui digitaalsisendi viik jäetakse vedelema (pole ühendatud ühegi pingeallikaga), saab see lugeda juhuslikke väärtusi, mis muudab selle loogilise taseme määramise keeruliseks.

Selle probleemi vältimiseks ühendatakse sisenditihvti ja pingeallika (tavaliselt Vcc) vahele tõmbetakisti, mis tagab, et sisend loeb vaikimisi kõrget (loogiline 1) olekut. Kui sisend on ühendatud madala (loogiline 0) signaaliga, tõmbab takisti sisendi maapinnale, võimaldades sisendil lugeda madalat olekut.







ESP32 sisseehitatud ülestõmbetihvtid

ESP32 mikrokontrolleril on 34 üldotstarbelist sisendi/väljundi (GPIO) tihvti, mida saab konfigureerida kas digitaalsete või analoogviikudena. Nende 34 tihvti hulgas on mõnel kontaktil sisseehitatud tõmbetakistid, mida saab tarkvara lubada.



Järgmises tabelis on näidatud ESP32 kontaktid, millel on sisseehitatud tõmbetakistid:



PIN-kood Pin Nimi Sisseehitatud tõmbetakisti
0 GPIO0 Jah
2 GPIO2 Jah
4 GPIO4 Jah
5 GPIO5 Jah
12 GPIO12 Jah
13 GPIO13 Jah
14 GPIO14 Jah
viisteist GPIO15 Jah
25 GPIO25 Jah
26 GPIO26 Jah
27 GPIO27 Jah
32 GPIO32 Jah
33 GPIO33 Jah
3. 4 GPIO34 Ei
35 GPIO35 Ei
36 GPIO36 Ei
39 GPIO39 Ei

Nagu näete, on enamikul ESP32 digitaalsetest kontaktidest sisseehitatud tõmbetakistid. Kuid mitte kõigil tihvtidel pole seda funktsiooni. Kontaktidel 34, 35, 36 ja 39 ei ole sisseehitatud tõmbetakisteid.





Märge: ESP32-s on integreeritud tõmbetakistid ja tõmbetakistid saadaval ainult kontaktides, mis toetavad nii sisendit kui ka väljundit. GPIO-d 34-39 , mis on piiratud ainult sisendiga, neil pole neid takisteid sisse ehitatud.



Kontrollige täielikku ESP32 pinouti viide .

Tõmbetakistite lubamine ESP32-l

ESP32 viigu tõmbetakisti lubamiseks võite kasutada gpio_set_pull_mode() ESP-IDF raamistiku pakutav funktsioon.

Sellel funktsioonil on kaks argumenti:

  • GPIO PIN-kood
  • Tõmberežiim

Tõmberežiim võib olla ükskõik milline GPIO_PULLUP_ENABLE või GPIO_PULLUP_DISABLE . Siin on näide koodist, mis lubab GPIO2 tõmbetakisti:

#include 'driver/gpio.h'

tühine enable_pull_up ( ) {

gpio_set_pull_mode ( GPIO_NUM_2 , GPIO_PULLUP_ENABLE ) ;

}

pinMode ( 5 , INPUT_PULLUP ) ;

Oluline on märkida, et tõmbetakisti lubamine tihvtil mõjutab selle käitumist, kui kontakti kasutatakse väljundina. Sel juhul toimib tõmbetakisti nõrga vooluallikana ja võib mõjutada väljundpinge taset.

Teise võimalusena saame lubada ESP32 sisemised tõmbed, kasutades pinMode() Arduino funktsioon.

pinMode ( 5 , INPUT_PULLUP ) ;

Ülaltoodud kood lubab sisemise tõmbetakisti kontaktil 5 . Samamoodi saate lubada sisemise ripptakisti, määrates režiimi INPUT_PULLDOWN .

Järeldus

Tõmbetakistid on digitaalsetes ahelates olulised komponendid ja ESP32 mikrokontroller pakub enamikule digitaalsetele kontaktidele sisseehitatud tõmbetakistid. Nende takistite lubamine võib tagada stabiilse loogikataseme ja vältida ujuva sisendi probleeme. Siiski on oluline märkida, et mitte kõigil ESP32 kontaktidel ei ole sisseehitatud tõmbetakisteid, seega on oluline kontrollida ESP32 pinout või andmeleht enne vooluringi projekteerimist. Lisaks võib tõmbetakisti lubamine mõjutada kontakti käitumist, kui seda kasutatakse väljundina.