ESP8266
Tillverkare | Espressif Systems |
---|---|
Typ | 32-bitars mikrokontroller |
CPU | Tensilica Diamond Standard 106Micro (alias L106) @ 80 MHz (standard) eller 160 MHz |
Minne | 32 KiB instruktion, 80 KiB användardata |
Inmatning | 17 GPIO-stift |
Kraft | 3,3 V DC |
Efterträdare | ESP32 |
ESP8266 är ett billigt Wi-Fi- mikrochip, med inbyggd TCP/IP-nätverksprogramvara och mikrokontrollerkapacitet , producerat av Espressif Systems i Shanghai, Kina .
Chipet blev populärt i den engelsktalande tillverkaren i augusti 2014 via ESP-01 -modulen, tillverkad av en tredjepartstillverkare Ai-Thinker. Denna lilla modul tillåter mikrokontroller att ansluta till ett Wi-Fi-nätverk och göra enkla TCP/IP-anslutningar med Hayes -kommandon. Men till en början fanns det nästan ingen engelskspråkig dokumentation på chippet och de kommandon det accepterade. Det mycket låga priset och det faktum att det fanns väldigt få externa komponenter på modulen, vilket antydde att den så småningom kunde bli mycket billig i volym, lockade många hackare att utforska modulen, chippet och mjukvaran på den, samt att översätta den kinesiska dokumentationen.
ESP8285 är ett liknande chip med ett inbyggt 1 MiB flashminne, vilket möjliggör utformningen av enheter med ett chip som kan anslutas via Wi-Fi .
Dessa mikrokontrollerchips har efterföljts av ESP32 -familjen av enheter.
Funktioner
- Processor: L106 32-bitars RISC -mikroprocessorkärna baserad på Tensilica Diamond Standard 106Micro som körs på 80 eller 160 MHz
- Minne:
- 32 KiB instruktions-RAM
- 32 KiB instruktionscache RAM
- 80 KiB användardata-RAM
- 16 KiB ETS systemdata-RAM
- Extern QSPI-blixt: upp till 16 MiB stöds (512 KiB till 4 MiB vanligtvis ingår)
-
IEEE 802.11 b/g/n Wi-Fi
- Integrerad TR-switch , balun , LNA , effektförstärkare och matchande nätverk
- WEP- eller WPA/WPA2 -autentisering, eller öppna nätverk
- 17 GPIO- stift
- Serial Peripheral Interface Bus (SPI)
- I²C (programvaruimplementering)
- I²S gränssnitt med DMA (delning av stift med GPIO)
- UART på dedikerade stift, plus en UART för endast sändning kan aktiveras på GPIO2
- 10-bitars ADC ( successiv approximation ADC )
Pinout av ESP-01
Pinouten är som följer för den gemensamma ESP-01-modulen :
- GND, jord (0 V)
- GPIO 2, allmän ingång/utgång nr 2
- GPIO 0, Allmän ingång/utgång nr 0
- RX, ta emot data i, även GPIO3
- VCC, Spänning (+3,3 V; klarar upp till 3,6 V)
- RST, Återställ
- CH_PD, Chip avstängning
- TX, överför data ut, även GPIO1
SDK:er
I oktober 2014 släppte Espressif Systems ett mjukvaruutvecklingskit (SDK) för att programmera chippet direkt, vilket tog bort behovet av en separat mikrokontroller. Sedan dess har det funnits många officiella SDK-utgåvor från Espressif; Espressif har två versioner av SDK - en som är baserad på FreeRTOS och den andra baserad på callbacks .
Ett alternativ till Espressifs officiella SDK är ESP-Open-SDK med öppen källkod som är baserad på verktygskedjan GNU Compiler Collection (GCC), som underhålls av Max Filippov. Ett annat alternativ är "Inofficial Development Kit" av Mikhail Grigorev.
Andra SDK:er, mestadels öppen källkod, inkluderar:
- Arduino — En C++-baserad firmware. Med denna kärna kan ESP8266-processorn och dess Wi-Fi-komponenter programmeras som vilken annan Arduino-enhet som helst. ESP8266 Arduino Core är tillgänglig via GitHub .
- ESP8266 BASIC — En BASIC -liknande tolk med öppen källkod, speciellt anpassad för Internet of Things ( IoT). Självvärd webbläsarbaserad utvecklingsmiljö.
- ESP Easy — Utvecklat av hemautomationsentusiaster .
- ESPHome — ESPHome är ett system för att styra din ESP8266/ESP32 med enkla men kraftfulla konfigurationsfiler och fjärrstyra dem via hemautomationssystem.
- Tasmota - firmware med öppen källkod, för hemautomation.
- ESP-Open-RTOS — Open-source FreeRTOS-baserat ESP8266 mjukvaruramverk.
- ESP-Open-SDK — Gratis och öppen (så mycket som möjligt) integrerad SDK för ESP8266/ESP8285-chips.
- Espruino — En aktivt underhållen JavaScript SDK och firmware, som nära emulerar Node.js . Stöder ett fåtal MCU:er, inklusive ESP8266.
- ESPurna — Open-source ESP8285/ESP8266 firmware.
- Forthright — Port of Jones Forth till ESP8266 mikrokontroller.
- MicroPython — En port av MicroPython (en implementering av Python för inbäddade enheter) till ESP8266-plattformen.
- Moddable SDK — inkluderar JavaScript-språk och biblioteksstöd för ESP8266
- Mongoose OS — Ett operativsystem med öppen källkod för anslutna produkter. Stöder ESP8266 och ESP32. Utveckla i C eller JavaScript.
- NodeMCU — En Lua -baserad firmware.
- PlatformIO — En plattformsoberoende IDE och enhetlig debugger, som sitter ovanpå Arduino-kod och bibliotek.
- Punyforth — Forth-inspirerat programmeringsspråk för ESP8266.
- Sming — Ett aktivt utvecklat asynkront C/C++ ramverk med suverän prestanda och flera nätverksfunktioner.
- uLisp — En version av programmeringsspråket Lisp speciellt utformad för att köras på processorer med en begränsad mängd RAM.
- ZBasic för ESP8266 — En delmängd av Microsofts mycket använda Visual Basic 6, som har anpassats som ett kontrollspråk för ZX-mikrokontrollerfamiljen och ESP8266.
- Zerynth — IoT-ramverk för programmering av ESP8266 och andra mikrokontroller i Python .
- IOTBAH - är ett operativsystem (OS) för Espressif ESP8266
Espressif-moduler
Detta är serien av ESP8266-baserade moduler gjorda av Espressif:
namn | Aktiva stift | Tonhöjd | Formfaktor | lysdioder | Antenn | Skärmad | Mått (mm) | Anteckningar |
---|---|---|---|---|---|---|---|---|
ESP-WROOM-02 | 18 | 1,5 mm | 2×9 castellated | Nej | PCB-spår | Ja | 18 × 20 | FCC ID 2AC7Z-ESPWROOM02. |
ESP-WROOM-02D | 18 | 1,5 mm | 2×9 castellated | Nej | PCB-spår | Ja | 18 × 20 | FCC ID 2AC7Z-ESPWROOM02D. Revision av ESP-WROOM-02 kompatibel med både 150-mil och 208-mil flashminne. |
ESP-WROOM-02U | 18 | 1,5 mm | 2×9 castellated | Nej | U.FL-uttag | Ja | 18 × 20 | Skiljer sig från ESP-WROOM-02D genom att den inkluderar en U.FL-kompatibel antennkontakt. |
ESP-WROOM-S2 | 20 | 1,5 mm | 2×10 castellated | Nej | PCB-spår | Ja | 16 × 23 | FCC ID 2AC7Z-ESPWROOMS2. |
I tabellen ovan (och de två tabellerna som följer) inkluderar "Aktiva stift" GPIO- och ADC-stiften med vilka externa enheter kan anslutas till ESP8266 MCU. "Pitch" är utrymmet mellan stiften på ESP8266-modulen, vilket är viktigt att veta om enheten kommer att användas på en breadboard. "Formfaktorn" beskriver också modulförpackningen som "2 × 9 DIL", vilket betyder två rader med 9 stift arrangerade "Dual In Line", som stiften på DIP IC:er. Många ESP-xx-moduler har en liten inbyggd lysdiod som kan programmeras att blinka och därmed indikera aktivitet. Det finns flera antennalternativ för ESP-xx-kort inklusive en spårantenn, en inbyggd keramisk antenn och en extern kontakt som gör att en extern Wi-Fi-antenn kan anslutas. Eftersom Wi-Fi-kommunikation genererar mycket RFI (Radio Frequency Interference), gillar statliga organ som FCC skärmad elektronik för att minimera störningar med andra enheter. Vissa av ESP-xx-modulerna är inrymda i en metalllåda med en FCC-stämpel på den. Första och andra världsmarknaden kommer sannolikt att kräva FCC-godkännande och skärmade Wi-Fi-enheter. [ citat behövs ]
Ai-Thinker-moduler
Detta är den första serien av moduler som tillverkats med ESP8266 av tredjepartstillverkaren Ai-Thinker och är fortfarande den mest tillgängliga. De kallas gemensamt för "ESP-xx-moduler". För att bilda ett fungerande utvecklingssystem kräver de ytterligare komponenter, särskilt en seriell TTL-till-USB-adapter (kallas ibland en USB-till-UART-brygga) och en extern 3,3 volts strömförsörjning. Nybörjare ESP8266-utvecklare uppmuntras att överväga större ESP8266 Wi-Fi-utvecklingskort som NodeMCU som inkluderar USB-till-UART-bryggan och en Micro-USB-kontakt kopplad till en 3,3 volts strömregulator som redan är inbyggd i kortet. När projektutvecklingen är klar behövs inte dessa komponenter och dessa billigare ESP-xx-moduler är ett alternativ med lägre effekt och mindre fotavtryck för produktionskörningar.
I kolumnen Notes gäller Flash-minnesstorlekar för den givna modulen och alla de under den i tabellen. Undantag som gäller för en enskild modul visas i ().
namn | Aktiva stift | Tonhöjd | Formfaktor | lysdioder | Antenn | Skärmad | Mått (mm) | Anteckningar |
---|---|---|---|---|---|---|---|---|
ESP-01 | 6 | 0,1 tum | 2×4 DIL | Ja | PCB-spår | Nej | 14,3 × 24,8 | 512 KiB Flash och blå PCB från en generisk tillverkare. 1 MiB Flash, AI-Cloud och svart PCB från AI-Thinker. |
ESP-01S | 6 | 0,1 tum | 2×4 DIL | Ja | PCB-spår | Nej | 14,4 × 24,7 | 1 MiB blixt |
ESP-01M | 16 | 1,6 mm | 2×9 kantkontakt | Nej | PCB-spår | Ja | 18,0 × 18,0 | Använder ESP8285 (1 MiB inbyggd blixt). |
ESP-02 | 6 | 0,1 tum | 2×4 castellated | Nej | U.FL-uttag | Nej | 14,2 × 14,2 | |
ESP-03 | 10 | 2 mm | 2×7 castellated | Nej | Keramisk | Nej | 17,3 × 12,1 | |
ESP-04 | 10 | 2 mm | 2×4 castellated | Nej | Ingen | Nej | 14,7 × 12,1 | |
ESP-05 | 3 | 0,1 tum | 1×5 SIL | Nej | U.FL-uttag | Nej | 14,2 × 14,2 | |
ESP-06 | 11 | olika | 4×3 tärningar | Nej | Ingen | Ja | 14,2 × 14,7 | Ej FCC-godkänd. |
ESP-07 | 14 | 2 mm | 2×8 nålhål | Ja | Keramik + U.FL-uttag | Ja | 20,0 × 16,0 | Ej FCC-godkänd. |
ESP-07S | 14 | 2 mm | 2×8 nålhål | Nej | U.FL-uttag | Ja | 17,0 × 16,0 | FCC och CE godkända. |
ESP-08 | 10 | 2 mm | 2×7 castellated | Nej | Ingen | Ja | 17,0 × 16,0 | Ej FCC-godkänd. |
ESP-09 | 10 | olika | 4×3 tärningar | Nej | Ingen | Nej | 10,0 × 10,0 | |
ESP-10 | 3 | 2 mm | 1×5 castellated | Nej | Ingen | Nej | 14,2 × 10,0 | |
ESP-11 | 6 | 1,27 mm | 1×8 nålhål | Nej | Keramisk | Nej | 17,3 × 12,1 | |
ESP-12 | 14 | 2 mm | 2×8 castellated | Ja | PCB-spår | Ja | 24,0 × 16,0 | FCC och CE godkända. |
ESP-12E | 20 | 2 mm | 2×8 castellated | Ja | PCB-spår | Ja | 24,0 × 16,0 | 4 MiB blixt. |
ESP-12F | 20 | 2 mm | 2×8 castellated | Ja | PCB-spår | Ja | 24,0 × 16,0 | FCC och CE godkända. Förbättrad antennprestanda. |
ESP-12S | 14 | 2 mm | 2×8 castellated | Ja | PCB-spår | Ja | 24,0 × 16,0 | FCC godkänd. |
ESP-13 | 16 | 1,5 mm | 2×9 castellated | Nej | PCB-spår | Ja | B18,0 × L20,0 | Märkt som "FCC". Den skärmade modulen är placerad i sidled, jämfört med ESP-12-modulerna. |
ESP-14 | 22 | 2 mm | 2×8 castellated +6 | Ja | PCB-spår | Ja | 24,3 × 16,2 | Mest annonserat med "AI Cloud Inside". |
Övriga brädor
Anledningen till populariteten för många av dessa kort över de tidigare ESP-xx-modulerna är inkluderingen av en inbyggd USB-till-UART-brygga (som Silicon Labs CP2102 eller WCH CH340G) och en Micro-USB-kontakt, tillsammans med en 3,3-volts regulator för att ge både ström till kortet och anslutning till värddatorn (mjukvaruutveckling) – vanligen kallad konsolen, vilket gör det till en enkel utvecklingsplattform. Med tidigare ESP-xx-moduler måste dessa två artiklar (USB-till-seriell-adaptern och regulatorn) köpas separat och kopplas in i ESP-xx-kretsen. Moderna ESP8266-kort som NodeMCU är lättare att arbeta med och erbjuder fler GPIO-stift. De flesta av korten som listas här är baserade på ESP-12E-modulen, men nya moduler introduceras till synes varannan månad.
namn | Aktiva stift | Tonhöjd | Formfaktor | lysdioder | Antenn | Skärmad | Mått (mm) | Anteckningar |
---|---|---|---|---|---|---|---|---|
Bolt IoT | 14 | 0,1 tum | 2×14 DIL | Ja | PCB-spår | Ja | 30 × 40 | Levereras med ett inbyggt SD-kort och funktioner som Lib-Discovery och Fail Safe Mode. Har ett eget moln för IoT. |
Olimex MOD-WIFI-ESP8266 | 2 | 0,1 tum | UEXT-modul | Ja | PCB-spår | Nej | ? | Endast RX/TX är anslutna till UEXT-kontakten. |
Olimex MOD-WIFI-ESP8266-DEV | 20 | 0,1 tum | 2×11 DIL + castellated | Ja | PCB-spår | Nej | 33 × 23 | Alla tillgängliga GPIO-stift är anslutna, har även pads för lödning av UEXT-kontakt (med RX/TX och SDA/SCL-signaler). |
NodeMCU DEVKIT | 14 | 0,1 tum | 2×15 DIL | Ja | PCB-spår | Ja | 49 × 24,5 | Använder ESP-12-modulen; inkluderar USB till seriellt gränssnitt. |
Adafruit Huzzah ESP8266 breakout | 14 | 0,1 tum | 2×10 DIL | Ja | PCB-spår | Ja | 25 × 38 | Använder ESP-12-modulen. |
SparkFun ESP8266 Thing WRL-13231 | 12 | 0,1 tum | 2×10 DIL | Ja | PCB-spår + U.FL- sockel | Nej | 58 × 26 | FTDI seriell header, Micro-USB-uttag för ström, inkluderar Li-ion batteriladdare. |
KNEWRON Technologies smartWIFI | 12 | 0,1 tum | 2×20 DIL | Ja 1 RGB | PCB-spår | Ja | 25,4 × 50,8 | CP2102 USB-brygga, inkluderar batteriladdare, mikro-USB-uttag för ström och batteriladdning, 1 RGB LED och USER / Reflash-knapp. |
ArduCAM ESP8266 UNO | 12+ | 0,1 tum | Arduino Uno | Ja | PCB-spår | Ja | 53,4 × 68,6 | Använder AI Thinkers ESP8266MOD-modul och har mikro-USB-port, batteristift, kamerastift och uSD-kort allt på samma kort. Fullt kompatibel med Arduino Uno-sköldar. |
DoIT ESPduino | 12 | 0,1 tum | Arduino Uno | Ja | PCB-spår | Ja | 53,4 × 68,6 | Använder modulen ESP-WROOM-02 (ESP-13) och USB typ B-port. Fullt kompatibel med Arduino Uno-sköldar. |
WeatherPlus - SwitchDoc Labs | 26+Grove | 0,1 tum | Beställnings | Ja | PCB-spår | Ja | 86,0 × 50,0 | Använder modulen AI Thinker Model ESP8266MOD (ESP-13) och FTDI för programmering och Mini-USB-port för ström. Fullt kompatibel med programvaran Adafruit Huzzah. Inkluderar BMP280 Barometer, ADS1115 och Grove I2C-kontakter. Pluggar för vindmätare/vindflöjel/regnskopa. |
WeMos D1 | 12 | 0,1 tum | Arduino Uno | Ja | PCB-spår | Ja | 53,4 × 68,6 | Använder ESP-12F-modulen och Micro-USB-uttaget. Avvecklad till förmån för WeMos D1 R2. |
WeMos D1 R2 | 12 | 0,1 tum | Arduino Uno | Ja | PCB-spår | Ja | 53,4 × 68,6 | Använder ESP-12F-modul och har Micro-USB-uttag. |
WeMos D1 mini | 12 | 0,1 tum | 2×8 DIL | Ja | PCB-spår | Ja | 25,6 × 34,2 | Använder ESP-12S-modul och har Micro-USB-uttag. |
WeMos D1 mini Lite | 12 | 0,1 tum | 2×8 DIL | Ja | PCB-spår | Ja | 25,6 × 34,2 | Baserad på ESP8285, en ESP8266 med 1 MiB inbyggd blixt; har Micro-USB-uttag. |
WeMos D1 mini Pro | 12 | 0,1 tum | 2×8 DIL | Ja | Keramik och U.FL uttag | Ja | 25,6 × 34,2 | Använder ESP8266EX-chip; har Micro-USB-uttag, U.FL-antennkontakt och 16 MiB-blixt. |
ESPert ESPresso Lite | 16 | 0,1 tum | 2×8 DIL | Ja | PCB-spår | Ja | 26,5 × 57,6 | Använder ESP-WROOM-02-modulen. Tillverkad i begränsad mängd som betaversion. |
ESPert ESPresso Lite V2.0 | 24 | 0,1 tum | 2×10 DIL | Ja | PCB-spår | Ja | 28 × 61 | Förbättrad version av ESPresso Lite. |
In-Circuit ESP-ADC | 18 | 0,1 tum | 2×9 DIL | Nej | U.FL- uttag | Ja | 22,9 × 14,9 | Använder ESP8266EX-chip. |
Watterott ESP-WROOM02-Breakout | 14 | 0,1 tum | 2×10 DIL | Ja | PCB-spår | Ja | 40,64 × 27,94 | Använder Espressif ESP-WROOM-02-modulen. |
Geek Wave Solution IOT WROOM-02 Dev. Styrelse | 20 | 0,1 tum | ? | Ja | PCB-spår | Ja | 93,80 × 80,02 | Utvecklingskort med Espressif ESP-WROOM-02-modul och fyra reläer. |
Snygg 2-delad skiva | 20 | 0,1 tum | ? | Ja | PCB-spår | Ja | ? | Utvecklingskort med Espressif ESP8266 ESP-12E och separat kort för CH340G USB-gränssnitt. |
ESP32-C3
2020 tillkännagav Espressif ett nytt chip ESP32-C3, som är pinkompatibelt med ESP8266. Den är baserad på en enkelkärnig RISC-V 32-bitars CPU med en klockhastighet på upp till 160 MHz. Den innehåller 400 KiB SRAM och 384 KiB ROM-lagringsutrymme inbyggt.
Se även
- ESP32 – efterföljaren från Espressif
- Sakernas internet
- MCU (mikrokontrollerenhet)