ESP8266 Pinout Reference: Mitä GPIO-nastoja sinun pitäisi käyttää?

Tämä artikkeli on opas ESP8266:n GPIO-piireistä: pinout-kaaviot, niiden toiminnot ja niiden käyttö.

Espa8266 12-E -sirussa on 17 GPIO-nastaa. Kaikki GPIO:t eivät ole näkyvissä kaikissa ESP8266-kehitysalustoissa, joidenkin GPIO:iden käyttöä ei suositella ja toisilla on hyvin spesifisiä toimintoja.

Tämän oppaan avulla opit käyttämään ESP8266:n GPIO:ita oikein ja vältät tuntikausia kestäneen turhautumisen käyttämällä projekteihisi sopivimpia pinnejä.

Meillä on myös opas ESP32:n GPIO:ita varten: ESP32:n Pinout Reference: Which GPIO pins should you use?

ESP8266 12-E Chip Pinout

Oheinen kuva havainnollistaa ESP8266 12-E -piirin pinoutia. Käytä tätä kaaviota, jos käytät projekteissasi pelkkää ESP8266-sirua.

Huomaa: kaikkiin GPIO-piireihin ei pääse käsiksi kaikilla kehitysalustoilla, mutta jokainen tietty GPIO toimii samalla tavalla käyttämästäsi kehitysalustasta riippumatta. Jos olet vasta aloittamassa ESP8266:n käyttöä, suosittelemme lukemaan oppaamme:

Tällä hetkellä ESP8266-sirulla varustettuja kehitysalustoja on monenlaisia, ja ne eroavat toisistaan käytettävissä olevien GPIO:iden lukumäärän, koon, muotokertoimen jne…

Yleisimmin käytetyt ESP8266-alustat ovat ESP-01, ESP8266-12E NodeMCU Kit ja Wemos D1 Mini. Näiden piirilevyjen vertailua varten voit lukea tämän oppaan: ESP8266 Wi-Fi Development Boards comparison.

ESP8266-01 Pinout

Jos käytät ESP8266-01-piirilevyä, voit käyttää viitteenä seuraavaa GPIO-kaaviota.

ESP8266 12-E NodeMCU Kit

ESP8266 12-E NodeMCU Kitin pinout-kaavio on esitetty alla.

Wemos D1 Mini Pinout

Seuraavassa kuviossa on esitetty WeMos D1 Mini:n pinout.

Lataa PDF-tiedosto ESP8266:n pinout-kaavioista

Olemme koonneet kätevän PDF-tiedoston, jonka voit ladata ja tulostaa, jotta ESP8266:n kaaviot ovat aina vieressäsi:

Lataa PDF-tiedosto pinout-kaavioista ”

ESP8266:n oheislaitteita

ESP8266:n oheislaitteisiin kuuluvat:

  • 17 GPIO:ta
  • SPI
  • I2C (toteutettu ohjelmistolla)
  • I2S-liitännät DMA:lla
  • UART
  • 10-bit ADC

Best Pins to Use – ESP8266

Yksi tärkeä asia ESP8266:ssa on se, että GPIO-numero ei vastaa piirilevyn silkkikuvassa olevaa merkintää. Esimerkiksi D0 vastaa GPIO16:ta ja D1 vastaa GPIO5:tä.

Seuraavasta taulukosta näet silkkiruudussa olevien merkintöjen ja GPIO-numeron vastaavuuden sekä sen, mitä nastoja kannattaa käyttää projekteissasi ja mitkä ovat varovaisia.

Vihreällä korostetut nastat ovat OK käytettäväksi. Keltaisella korostetut ovat OK käyttää, mutta sinun on oltava tarkkana, koska ne saattavat käyttäytyä odottamattomasti lähinnä käynnistyksen aikana. Punaisella korostettuja nastoja ei suositella käytettäväksi tuloina tai lähtöinä.

.

Label GPIO Sisääntulo Tulostus Lähtö Huomautukset
D0 GPIO16 ei keskeytystä ei PWM- tai I2C-tukea HIGH käynnistyksen yhteydessä
käytetään heräämiseen syvästä unesta
D1 GPIO5 OK OK käytetään usein SCL:nä (I2C)
D2 GPIO4 OK OK OK OK käytetään usein SDA:na (I2C)
D3 GPIO0 vedetään ylös OK kytketään FLASH-painikkeeseen, käynnistys epäonnistuu, jos vedetään LOW
D4 GPIO2 vedetään ylös OK HIGH käynnistyksen yhteydessä
kytketty piirilevyn LEDiin, käynnistys epäonnistuu, jos se vedetään LOW
D5 GPIO14 OK OK SPI (SCLK)
D6 GPIO12 OK OK SPI (MISO)
D7 GPIO13 OK OK K SPI (MOSI)
D8 GPIO15 vedetään GND:hen OK SPI (CS)
Boot ei onnistu, jos vedetään HIGH
RX GPIO3 OK RX-pin HIGH käynnistyksessä
TX GPIO1 TX-pin OK HIGH käynnistyksessä
debug-ulostulo käynnistyksessä, käynnistys epäonnistuu, jos se vedetään LOW
A0 ADC0 Analogitulo X

Jatka lukemista, niin saat yksityiskohtaisemman ja syvällisemmän analyysin ESP8266:n GPIO-piireistä ja niiden toiminnoista.

Flash-siruun liitetyt GPIO:t

GPIO6-GPIO11 liitetään yleensä ESP8266-levyissä flash-siruun. Näitä nastoja ei siis suositella käytettäväksi.

Käynnistyksen aikana käytettävät nastat

Esp8266:n käynnistyminen voidaan estää, jos jotkin nastat vedetään LOW tai HIGH. Seuraavassa luettelossa näkyy seuraavien nastojen tila BOOTin aikana:

  • GPIO16: nasta on korkea BOOTissa
  • GPIO0: käynnistyksen epäonnistuminen, jos vedetään LOW
  • GPIO2: nasta on korkea BOOTissa, käynnistyksen epäonnistuminen, jos vedetään LOW
  • GPIO15: käynnistyksen epäonnistuminen, jos vedetään HIGH
  • GPIO3: tappi on korkea BOOTissa
  • GPIO1: tappi on korkea BOOTissa, käynnistysvika, jos vedetään LOW
  • GPIO10: tappi on korkea BOOTissa
  • GPIO9: tappi on korkea BOOTissa

Nastat korkealla BOOTissa

Tietyissä nastoissa, jotka antavat ulostuloa 3.3V-signaalin, kun ESP8266 käynnistyy. Tämä voi olla ongelmallista, jos näihin GPIO-piireihin on kytketty releitä tai muita oheislaitteita. Seuraavat GPIO:t antavat HIGH-signaalin käynnistyksen yhteydessä:

  • GPIO16
  • GPIO3
  • GPIO1
  • GPIO10
  • GPIO9

Lisäksi muut GPIO:t, GPIO5:tä ja GPIO4:ää lukuunottamatta, voivat antaa matalajännitesignaalin käynnistyksen yhteydessä, mikä voi olla ongelmallista, jos nämä on kytketty transistoreihin tai releisiin. Voit lukea tämän artikkelin, jossa tutkitaan kunkin GPIO:n tilaa ja käyttäytymistä käynnistyksen yhteydessä.

GPIO4 ja GPIO5 ovat turvallisimmat käytettävät GPIO:t, jos haluat käyttää releitä.

Analoginen tulo

ESP8266 tukee analogista lukemista vain yhdessä GPIO:ssa. Tuota GPIO:ta kutsutaan ADC0:ksi ja se on yleensä merkitty silkkipaperiin merkinnällä A0.

AdC0-pinin maksimitulojännite on 0-1V, jos käytät ESP8266:n paljasta sirua. Jos käytät kehityslevyä, kuten ESP8266 12-E NodeMCU-kittiä, jännitteen tuloalue on 0-3,3V, koska näissä levyissä on sisäinen jännitteen jakaja.

Voit oppia käyttämään analogista lukemista ESP8266:lla seuraavan oppaan avulla:

  • ESP8266 ADC – Analogisten arvojen lukeminen Arduino IDE:llä, MicroPythonilla ja Lua:lla

Ohjelmalla oleva LED

Vähemmistössä ESP8266-kehitysalustoista on sisäänrakennettu LED. Tämä LED on yleensä kytketty GPIO2:een.

LED toimii käänteisellä logiikalla. Lähetä HIGH-signaali kytkeäksesi sen pois päältä ja LOW-signaali kytkeäksesi sen päälle.

RST-piikki

Kun RST-piikki vedetään LOW, ESP8266 nollautuu. Tämä on sama kuin painaisi sisäänrakennettua RESET-painiketta.

GPIO0

Kun GPIO0 vedetään LOW, se asettaa ESP8266:n käynnistyslataustilaan. Tämä on sama kuin painaisi sisäänrakennettua FLASH/BOOT-painiketta.

GPIO16

GPIO16:lla voidaan herättää ESP8266 syvästä lepotilasta. ESP8266:n herättämiseksi syvästä lepotilasta GPIO16 on kytkettävä RST-pinniin. Opi, miten ESP8266 laitetaan syvään lepotilaan:

  • ESP8266 Deep Sleep with Arduino IDE
  • ESP8266 Deep Sleep with MicroPython

I2C

ESP8266:ssa ei ole laitteistokohtaisia I2C-piikkejä, mutta se voidaan toteuttaa ohjelmallisesti. Voit siis käyttää mitä tahansa GPIO:ta I2C:nä. Yleensä seuraavia GPIOja käytetään I2C-pinneinä:

  • GPIO5: SCL
  • GPIO4: SDA

SPI

ESP8266:ssa SPI:nä käytettävät nastat ovat:

  • GPIO12: MISO
  • GPIO13: MOSI
  • GPIO14: SCLK
  • GPIO15: CS

PWM-pinnit

ESP8266 sallii ohjelmallisen PWM:n kaikissa I/O-pinneissä: GPIO0-GPIO16. ESP8266:n PWM-signaalien resoluutio on 10-bittinen. Opi käyttämään ESP8266:n PWM-nastoja:

  • ESP8266 PWM with Arduino IDE
  • ESP8266 PWM with MicroPython

Keskeytysnastat

ESP8266 tukee keskeytyksiä missä tahansa GPIO:ssa GPIO16:ta lukuun ottamatta.

  • ESP8266:n keskeytykset ja ajastimet Arduino IDE:llä

Pakkaaminen

Toivomme, että tämä opas ESP8266:n GPIO-piireistä oli sinulle hyödyllinen. Jos sinulla on vinkkejä ESP8266 GPIOjen oikeaan käyttöön, voit kirjoittaa kommentin alle.

Meillä on myös samanlainen opas ESP32 GPIOille, jonka voit lukea.

Jos olet aloittamassa ESP8266:n käyttöä, meillä on muutama hyvä sisältö, josta saatat olla kiinnostunut:

  • Home Automation using ESP8266 (course)
  • Getting Started with the ESP8266
  • 30+ ESP8266 Projects and Tutorials
  • ESP8266 Web Server Tutorial
  • ESP32 vs ESP8266 – Pros and Cons

Kiitos lukemisesta.

Vastaa

Sähköpostiosoitettasi ei julkaista.