Esp8266 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для arduino: Arduino IDE для ESP8266 – esp8266

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Arduino IDE для ESP8266 – esp8266

Arduino IDE для ESP8266 позволяСт ΠΏΠΈΡΠ°Ρ‚ΡŒ скСтчи ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈΡ… ΠΎΠ΄Π½ΠΈΠΌ ΠΊΠ»ΠΈΠΊΠΎΠΌ Π² ESP8266 Π² Π·Π½Π°ΠΊΠΎΠΌΠΎΠΉ срСдС (я Π±Ρ‹ Π΄Π°ΠΆΠ΅ сказал Β«Π΄ΠΎ Π±ΠΎΠ»ΠΈ Π·Π½Π°ΠΊΠΎΠΌΠΎΠΉΒ») Arduino IDE. Для Ρ‚Π΅Ρ… ΠΊΠΎΠΌΡƒ интСрфСйс Arduino IDE Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎ Π΄ΡƒΡˆΠ΅, Π΅ΡΡ‚ΡŒΒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Π³ΠΈΠ½Π° для Eclipse. Π˜Ρ‚Π°ΠΊ, ΠΎΠ±ΠΎ всСм ΠΏΠΎ порядку. Π‘Π°ΠΌΡ‹Π΅ Π½Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ сразу ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Arduino IDE для ESP8266: быстрый старт

Arduino IDE для ESP8266 позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² ESP8266 Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²Ρ‹ это Π΄Π΅Π»Π°Π΅Ρ‚Π΅ с Arduino. ΠŸΡ€ΠΈ этом Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΏΠ»Π°Ρ‚ Arduino Π½Π΅ трСбуСтся, это Π½Π΅ Ρ‚ΠΎΡ‚ случай, ΠΊΠΎΠ³Π΄Π° ESP8266 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² качСствС WiFi шилда для Arduino. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ практичСски всС Arduino Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ с ESP8266 послС нСбольшой Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ настоящСС врСмя ΡƒΠΆΠ΅ достаточно ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ для использования с ESP8266, Π½ΠΎ ΠΎ Π½ΠΈΡ… Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅.

Arduino IDE для ESP8266 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π° сСгодняшний дСнь ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ESP8266 (ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ особо ΠΈ Π½Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ), Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ с Ρ„Π»Π΅Ρˆ бОльшСго, Ρ‡Π΅ΠΌ 512k объСма. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ NodeMCU (всСх вСрсий), Olimex-MOD-WiFi-ESP8266.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ Ρ€Π΅ΠΆΠΈΠΌ авторСстарта ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΏΠΎ RTS+DTR, ΠΊΠ°ΠΊ Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Arduino, для этого потрСбуСтся USB-TTL Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ с Ρ€Π°Π·Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΈΠ½Π°ΠΌΠΈ DTR ΠΈ RTS. Если Ρƒ вас Ρ‚ΠΎΠ»ΡŒΠΊΠΎ RX, TX ΠΈ GND Π½Π° USB-TTL, Ρ‚ΠΎ придСтся по-старинкС Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΡ€ΠΈΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒ ΠΊ Π·Π΅ΠΌΠ»Π΅ GPIO0 ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π΅Ρ€Π³ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ модуля для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

Arduino IDE для ESP8266: ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π² настоящСС врСмя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ языка Wiring

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ GPIO осущСствляСтся Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ pin для arduino: pinMode, digitalRead, digitalWrite, Β  analogWrite Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ. GPIO Π½ΡƒΠΌΠ΅Ρ€ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ: для чтСния состояния GPIO2 Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ digitalRead(2)

GPIO0-GPIO15 ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ INPUT, OUTPUT, INPUT_PULLUP, ΠΈ INPUT_PULLDOWN. GPIO16 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ INPUT, OUTPUT ΠΈΠ»ΠΈ INPUT_PULLDOWN. Команда analogRead(A0) считываСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ADC (АЦП) с TOUT.

Команда analogWrite(pin, value) Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ PWM (ШИМ) Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ GPIO. Команда analogWrite(pin, 0) ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ PWM. value ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 0 Π΄ΠΎ PWMRANGE. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° PWMRANGE Π² настоящСС врСмя Ρ€Π°Π²Π½Π° 1023.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ обСспСчиваСтся функциями attachInterrupt, detachInterrupt. ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π½Π° любой GPIO, ΠΊΡ€ΠΎΠΌΠ΅ GPIO16. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ прСрывания Arduino CHANGE, RISING, FALLING Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ.

ESP8266 β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΈΠ½ΠΎΠ²

Π’Π°ΠΉΠΌΠΈΠ½Π³ ΠΈ delay

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ millis ΠΈ micros Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ миллисСкунды ΠΈ микросСкунды соотвСтствСнно, ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΠ΅ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° старта модуля. Π›ΡŽΠ±ΠΈΠΌΠ°Ρ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ функция delay Ρ‚Π°ΠΊΠΆΠ΅ присутствуСт ΠΈ приостанавливаСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скСтча Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ врСмя Π² миллисСкундах ΠΈ позволяСт ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ опСрациям WiFi ΠΈ TCP/IP. Ѐункция delayMicroseconds ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ врСмя задаСтся Π² микросСкундах.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ WiFi соСдинСниС, Π΅ΠΌΡƒ приходится Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ мноТСство Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, ΠΊΡ€ΠΎΠΌΠ΅ вашСго скСтча. WiFi ΠΈ TCP/IP Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ SDK ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ всС события Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° вашСй Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ loop() ΠΈΠ»ΠΈ Π²ΠΎ врСмя выполнСния delay(…). Если Π² вашСм ΠΊΠΎΠ΄Π΅ Π΅ΡΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ 50 миллисСкунд, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΒ  delay(…) для сохранСния Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ работоспособности стСка WiFi.

Π’Π°ΠΊΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ yield(), которая эквивалСнтна delay(0). Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, функция delayMicroseconds Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡, поэтому Π΅Π΅ использованиС для Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΡΠ²Ρ‹ΡˆΠ΅ 20 миллисСкунд Π½Π΅ рСкомСндуСтся.

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹ Serial ΠΈ Serial1 (UART0 ΠΈ UART1)

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Serial Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ с Arduino. Помимо Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ FIFO (ΠΏΠΎ 128 Π±Π°ΠΉΡ‚ для ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ Π±ΡƒΡ„Π΅Ρ€ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠΎ 256 Π±Π°ΠΉΡ‚ для ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈΠ΅ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… происходит ΠΏΠΎ прСрываниям, ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎ для вашСго скСтча. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ записи ΠΈ чтСния Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скСтча Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ FIFO ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ Π±ΡƒΡ„Π΅Ρ€ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ.

Serial ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ UART0, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° GPIO1(TX) ΠΈ GPIO3(RX). Π­Ρ‚ΠΈ ΠΏΠΈΠ½Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π½Π° GPIO15 (TX) ΠΈ GPIO13 (RX) Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Serial.swap(); послС Serial.begin();. ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² Serial.swap(); Π²Π΅Ρ€Π½Π΅Ρ‚ всС Π½Π° свои мСста.

Serial1 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ UART1, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ. UART1 TX это GPIO2. Для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Serial1 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Serial1.begin();

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, отладочная информация Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ WiFi Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Serial.begin();. Для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° UART0 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Serial.setDebugOutput(true); Для пСрСнаправлСния Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° UART1 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Serial1.setDebugOutput(true);

И Serial ΠΈ Serial1 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ 5, 6, 7, 8 Π±ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ…, odd (O), even (E), ΠΈ no (N) Ρ€Π΅ΠΆΠΈΠΌΡ‹ чСтности, ΠΈ 1 ΠΈΠ»ΠΈ 2 стоп Π±ΠΈΡ‚Π°. Для Π²Ρ‹Π±ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° Π²Ρ‹Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ Serial.begin(baudrate, SERIAL_8N1); ΠΈΠ»ΠΈ Serial.begin(baudrate, SERIAL_6E2); ΠΈ Ρ‚.Π΄.

PROGMEM

ΠœΠ°ΠΊΡ€ΠΎΡ PROGMEM Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ Π² Arduino, помСщая read only Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ строковыС константы (Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹) Π²ΠΎ Ρ„Π»Π΅Ρˆ ΠΏΠ°ΠΌΡΡ‚ΡŒ, высвобоТдая HEAP. Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² ESP8266 ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Π½Π΅ хранятся Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС, поэтому использованиС строковых констант Π²Π½ΡƒΡ‚Ρ€ΠΈ конструкций F(«») ΠΈ/ΠΈΠ»ΠΈ PSTR(«») ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ€Π°ΡΡ…ΠΎΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ Ρ„Π»Π΅Ρˆ памяти ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅ этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ одинаковыми строками для экономичного расходования мСста Π²ΠΎ Ρ„Π»Π΅Ρˆ памяти.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° WiFi ESP8266 (ESP8266WiFi)

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ WiFi ESP8266 ΠΎΡ‡Π΅Π½ΡŒ схоТи с функциями Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ WiFi шилда.

Бписок ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ:

  • WiFi.mode(m): Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ WIFI_AP (Ρ‚ΠΎΡ‡ΠΊΠ° доступа), WIFI_STA (ΠΊΠ»ΠΈΠ΅Π½Ρ‚), ΠΈΠ»ΠΈ WIFI_AP_STA (ΠΎΠ±Π° Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ).
  • WiFi.softAP(ssid) создаСт ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ доступа
  • WiFi.softAP(ssid, password) создаСт Ρ‚ΠΎΡ‡ΠΊΡƒ доступа с WPA2-PSK ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 8 символов
  • WiFi.macAddress(mac) позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ MAC адрСс Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
  • WiFi.softAPmacAddress(mac) позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ MAC адрСс Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ доступа
  • WiFi.localIP() позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ IP адрСс Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
  • WiFi.softAPIP() позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ IP адрСс Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ доступа
  • WiFi.RSSI() ΠΏΠΎΠΊΠ° Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π°
  • WiFi.printDiag(Serial); Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π΄ΠΈΠ°Π³Π½ΠΎΡΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ
  • Класс WiFiUDP ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ΅ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ multicast ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ multicast ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ вмСсто udp.beginPacket(addr, port) Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ udp.beginPacketMulticast(addr, port, WiFi.localIP()). Когда Π²Ρ‹ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚Π΅ multicast ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ вмСсто udp.begin(port) Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ udp.beginMulticast(WiFi.localIP(), multicast_ip_addr, port). Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ udp.destinationIP() для опрСдСлСния Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π» Π»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° multicast адрСс ΠΈΠ»ΠΈ прСдназначался ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Π°ΠΌ. Multicast Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ доступа.

WiFiServer, WiFiClient, ΠΈ WiFiUDP Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ WiFi шилда. Π§Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈΠ΄Π΅Ρ‚ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅ с этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ.

Π’ΠΈΠΊΠ΅Ρ€

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ticker ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована для выполнСния пСриодичСски ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ событий Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ врСмя. Π”Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² поставку.

Π’ настоящСС врСмя Π½Π΅ рСкомСндуСтся Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° (ΡΠ΅Ρ‚ΡŒ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚, Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ) Π² callback функциях Ρ‚ΠΈΠΊΠ΅Ρ€Π°. ВмСсто блокирования устанавливайтС Ρ„Π»Π°Π³ Π² callback функциях ΠΈ провСряйтС этот Ρ„Π»Π°Π³ Π² основном Ρ†ΠΈΠΊΠ»Π΅.

EEPROM

Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ отличаСтся ΠΎΡ‚ стандартной Arduino EEPROM. НСобходимо Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ EEPROM.begin(size) ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ чтСния ΠΈΠ»ΠΈ записи, Ρ€Π°Π·ΠΌΠ΅Ρ€ (указываСтся Π² Π±Π°ΠΉΡ‚Π°Ρ…) соотвСтствуСт Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π½Π°ΠΌΠ΅Ρ€Π΅Π²Π°Π΅Ρ‚Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² EEPROM. Π Π°Π·ΠΌΠ΅Ρ€ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 4 Π΄ΠΎ 4096 Π±Π°ΠΉΡ‚.

Ѐункция EEPROM.write Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ запись Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ Ρ„Π»Π΅Ρˆ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ EEPROM.commit() ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ. Ѐункция EEPROM.end() Ρ‚ΠΎΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ запись Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ освобоТдаСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΎΡ‚ Π΄Π°Π½Π½Ρ‹Ρ…, запись ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π°. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° EEPROM ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ΄ΠΈΠ½ сСктор Π²ΠΎ Ρ„Π»Π΅Ρˆ памяти, начиная с адрСса 0x7b000 для хранСния Π΄Π°Π½Π½Ρ‹Ρ…. Π’ поставку Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с EEPROM.

I2C (Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Wire)

Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅ΠΆΠΈΠΌ Π²Π΅Π΄ΡƒΡ‰Π΅Π³ΠΎ, частота ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²ΠΎΡ‡Π½ΠΎ Π΄ΠΎ 450 ΠΊΠ“Ρ†. ΠŸΠ΅Ρ€Π΅Π΄ использованиСм ΡˆΠΈΠ½Ρ‹ I2C, Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠΈΠ½Ρ‹ SDA ΠΈ SCL ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Wire.pins(int sda, int scl), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Wire.pins(0, 2) для модуля ESP-01. Для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΏΠΈΠ½Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 4(SDA) ΠΈ 5(SCL).

SPI

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° SPI ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ вСсь Arduino SPI API, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π² Ρ‚ΠΎΠΌ числС Ρ„Π°Π·Ρƒ синхронизации (CPHA). Clock polarity (CPOL) ΠΏΠΎΠΊΠ° Π½Π΅ поддСрТиваСтся (SPI_MODE2 ΠΈ SPI_MODE3 Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚).

ESP8266 API

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, спСцифичных для ESP8266 (Ρ€Π΅ΠΆΠΈΠΌ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна ΠΈ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€), Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ ESP. Ѐункция ESP.deepSleep(microseconds, mode) ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² Ρ€Π΅ΠΆΠΈΠΌ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ mode ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ значСния: WAKE_DEFAULT, WAKE_RFCAL, WAKE_NO_RFCAL, WAKE_RF_DISABLED. GPIO16 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ соСдинСн с RESET для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ESP.wdtEnable(), ESP.wdtDisable(), ΠΈ ESP.wdtFeed() ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ стороТСвым Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ.

ESP.reset() ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ

ESP.getFreeHeap() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ свободной памяти

ESP.getFreeHeap() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ свободной памяти

ESP.getChipId() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ESP8266 chip IDE, int 32bit

ESP.getFlashChipId() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ flash chip ID, int 32bit

ESP.getFlashChipSize() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π»Π΅Ρˆ памяти Π² Π±Π°ΠΉΡ‚Π°Ρ…, Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ опрСдСляСт SDK (ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ мСньшС Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°).

ESP.getFlashChipSpeed(void) Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ частоту Ρ„Π»Π΅Ρˆ памяти, Π² Π“Ρ†.

ESP.getCycleCount() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство Ρ†ΠΈΠΊΠ»ΠΎΠ² CPU с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° старта, unsigned 32-bit. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π° для Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠΈΠ½Π³Π° ΠΎΡ‡Π΅Π½ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° OneWire

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° OneWire Π±Ρ‹Π»Π° Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° для ESP8266 (внСсСны измСнСния Π² OneWire.h) Если Ρƒ вас установлСна Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° OneWire Π² ΠΏΠ°ΠΏΠΊΡƒ Arduino/libraries, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½Π°, Π° Π½Π΅ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° поставки.

mDNS Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ESP8266mDNS

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΊΠ°ΡΡ‚ΠΎΠ²Ρ‹Π΅ DNS запросы для локальной Π·ΠΎΠ½Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Β«esp8266.localΒ». Π’ настоящСС врСмя поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° Π·ΠΎΠ½Π°. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ WEB сСрвСру ESP8266 ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ IP адрСсу. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΏΡ€ΠΈΠ»Π°Π³Π°Π΅ΠΌΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ readme Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Servo

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ сСрвомоторами. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄ΠΎ 24 сСрвоприводов Π½Π° Π»ΡŽΠ±Ρ‹Ρ… доступных GPIO. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ 12 сСрвоприводов Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Timer0 ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ нСзависимы ΠΎΡ‚ Π»ΡŽΠ±Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… процСссов. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ 12 сСрвоприводов Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Timer1 ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ рСсурсы с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ функциями, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ Timer1. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ сСрвоприводов Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌ сигналом ESP8266 3,3Π², Π½ΠΎ Π½Π΅ смогут Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° напряТСнии 3,3Π² ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ источник питания. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ GND этого источника с GND ESP8266

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² поставку Arduino IDE

ΠŸΠΎΡ‡Ρ‚ΠΈ всС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ доступ ΠΊ рСгистрам микропроцСссора AVR Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΎΠΊ. На сСгодняшний дСнь ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ протСстированы ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ работоспособны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ:

  • arduinoWebSockets β€” WebSocket сСрвСр ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ для esp8266 (RFC6455)
  • aREST REST API handlerΒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ GPIO Ρ‡Π΅Ρ€Π΅Π· http запросы Π²ΠΈΠ΄Π° http://192.168.1.101/digital/6/1
  • Blynk β€” Π»Π΅Π³ΠΊΠΈΠΉ Π² освоСнии IoT Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΒ (страница Π½Π°Β Kickstarter). Π‘Ρ‚Π°Ρ‚ΡŒΡ Π½Π° нашСм сайтС ΠΎΠ± этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ ΠΈ мобильном ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ESP8266 – УправляСм со смартфона Ρ‡Π΅Ρ€Π΅Π· Blynk
  • DallasTemperature DS18B20, DS1820, DS18S20, DS1822
  • DHT11 β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ для ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ DHT dht(DHTPIN, DHTTYPE, 15)
  • NeoPixelBus β€” Arduino NeoPixel Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для esp8266
  • PubSubClient Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° MQTT by @Imroy. Π‘Ρ‚Π°Ρ‚ΡŒΡ Π½Π° нашСм сайтС об этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ ESP8266 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ ΠΊ OpenWRT+Mosquitto+mqttwarn ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ThingSpeak, EMAIL, Android, iOS, Twitter, CloudMQTT Π² 100 строчСк ΠΊΠΎΠ΄Π° Π² Arduino IDE
  • RTC β€” Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Β for Ds1307 & Ds3231 для esp8266
  • Souliss, Smart Home β€” Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ для Π£ΠΌΠ½ΠΎΠ³ΠΎ Π”ΠΎΠΌΠ°, построСнный Π½Π° Arduino, Android ΠΈ OpenHAB

Установка Arduino IDE Ρ‡Π΅Ρ€Π΅Π· Boards Manager

  1. УстановитС Arduino IDE с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сайта Arduino.cc
  2. Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Arduino IDE, Π΄Π°Π»Π΅Π΅ Π€Π°ΠΉΠ» β€” Настройки β€” Π² ΠΏΠΎΠ»Π΅ Additional Boards Manager URLs Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ссылку Π½Π° ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ http://arduino.esp8266.com/package_esp8266com_index.jsonΠΈΠ»ΠΈ для nightly build http://arduino.esp8266.com/staging/package_esp8266com_index.json, Π½Π°ΠΆΠ°Ρ‚ΡŒ OK (Π’ это ΠΏΠΎΠ»Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ нСсколько ссылок, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятой)
  3. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ β€” ΠŸΠ»Π°Ρ‚Π° β€” Boards Manager
  4. Π’ Boards Manager Π² ΠΏΠΎΠ»Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° Π²Π²Π΅Π΄ΠΈΡ‚Π΅ esp8266 ΠΈΠ»ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ пролистайтС список ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ESP8266 by ESP8266 Community Forum
  5. ΠšΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ Install ΠΈ Π΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅ΡΡŒ окончания Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ (ΠΎΠΊΠΎΠ»ΠΎ 130 ΠœΠ΅Π³Π°Π±Π°ΠΉΡ‚). Если Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° слишком быстро, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡƒΠΆΠ΅ устанавливали Arduino IDE для ESP8266 ΠΈ потрСбуСтся ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ кэш Boards Manager, ΠΈΠ½Π°Ρ‡Π΅ Ρƒ вас останСтся установлСнной старая вСрсия. НуТно сначала Π΄Π΅ΠΈΠ½ΡΡ‚Π°Π»Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ кэша. Для Win7 x64 ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ C:\Users\ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ\AppData\Roaming\Arduino15 ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ всС, начиная с ΠΏ.2
  6. Π—Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Boards Manager ΠΈ Π² мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠŸΠ»Π°Ρ‚Π° β€” Generic ESP8266
  7. УстановитС частоту вашСго модуля 80 ΠΈΠ»ΠΈ 160Mhz, Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π»Π΅Ρˆ памяти ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ваш USB-TTL Π°Π΄Π°ΠΏΡ‚Π΅Ρ€

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ESP8266

ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266 для Arduino IDE

ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅USB-TTL
VCCESP8266 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ ΠΊ Π²Π½Π΅ΡˆΠ½Π΅ΠΌΡƒ источнику питания >300мА, 3,3V
GNDвсС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ GND Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ соСдинСны вмСстС: ESP8266, USB-TTL ΠΈ источника питанияGND
TX (UTXD)RX
RX (URXD)TX
GPIO0ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ рСзистор 10kDTR (Ссли Π½Π° вашСм USB-TTL Π½Π΅ Ρ€Π°Π·Π²Π΅Π΄Π΅Π½ ΠΏΠΈΠ½ DTR, Ρ‚ΠΎ Π²Π°ΠΌ придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ GPIO0 Π½Π° зСмлю для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ESP8266 Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ)
RESET (RSBT, REST)ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ рСзистор 10k, Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΡƒΡŽ RESET ΠΈ GND для Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ сброса модуляRTS (Ссли Π½Π° вашСм USB-TTL Π½Π΅ Ρ€Π°Π·Π²Π΅Π΄Π΅Π½ ΠΏΠΈΠ½ RTS, Ρ‚ΠΎ Π²Π°ΠΌ придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ )
CH_PD (CH_EN)ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ рСзистор 10k
GPIO15 (MTDO)ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΊ Π·Π΅ΠΌΠ»Π΅ рСзистор 10k
(для Ρ‚Π΅Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π³Π΄Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Π½ ΠΏΠΈΠ½ GPIO15)
GPIO2ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ рСзистор 10k
(Π½Π° схСмС Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½, Π½ΠΎ рСкомСндуСтся для увСличСния ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ)
GPIO16для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° Deep Sleep Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΏΠΈΠ½Ρ‹ ESP8266 GPIO16 ΠΈ RESET Ρ‡Π΅Ρ€Π΅Π· рСзистор 470 Ом (Π½Π° схСмС Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½)

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ.

1. НС Π½Π° всСх модулях Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ всС ΠΏΠΈΠ½Ρ‹. ΠŸΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ΠΌ модуля ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с Π²ΠΈΠ΄Π°ΠΌΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ ΠΈΡ… распиновкой.

2. Если Π½Π° вашСм USB-TTL ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ ΠΏΠΈΠ½Ρ‹ CTS ΠΈ DSR β€” для Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΎΠ½ΠΈ Π²Π°ΠΌ Π½Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚, Ρ‚.ΠΊ. Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π²Ρ…ΠΎΠ΄.

3. Для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ESP8266 трСбуСтся источник стабилизированного питания 3,3 Π²ΠΎΠ»ΡŒΡ‚, Ρ‚ΠΎΠΊ Π±ΠΎΠ»Π΅Π΅ 250 ΠΌΠΈΠ»Π»ΠΈΠ°ΠΌΠΏΠ΅Ρ€. ИспользованиС питания ΠΎΡ‚ USB-TTL ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Ρ€Π°Π±ΠΎΡ‚Π΅.

МинимальноС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266

МинимальноС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266 (ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½Π°Ρ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ)

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ, со всСми дСталями, ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ESP8266 Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² нашСй ΡΡ‚Π°Ρ‚ΡŒΠ΅Β ESP8266 – ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ

Arduino IDE для ESP8266: быстрый старт

1. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ USB-TTL ΠΊ USB

2. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ESP8266 ΠΊ USB-TTL ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ. Если Π²Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ ESP8266 ΠΏΠΎ схСмС Π±Π΅Π· ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π°Π²Ρ‚ΠΎΠ·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ (Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ DTR ΠΈ RTS), Ρ‚ΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ соСдинитС GPIO0 с Π·Π΅ΠΌΠ»Π΅ΠΉ, ΠΏΠ΅Ρ€Π΅Π΄Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ модуля β€” всС готово для  ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ

3. ЗапускаСм Arduino IDE

4. Π’ мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ β€” ΠŸΠ»Π°Ρ‚Π° β€” Generic ESP8266 board (Π² самом Π½ΠΈΠ·Ρƒ)

5. Π’ мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ наш USB-TTL

6. Π’ мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ β€”Β Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ частоту, Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π»Π΅Ρˆ памяти вашСго модуля

7. Π’ мСню Π€Π°ΠΉΠ» β€” ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ (ΠžΠ±Ρ€Π°Π·Ρ†Ρ‹) β€” ESP8266WiFi β€” WiFiWebServer

8. Π’ скСтчС заполняСтС SSID ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ вашСй WiFi сСти

9. Π–ΠΌΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ компиляции ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча

10. Π–Π΄Π΅ΠΌ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ°Β ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. ПослС ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΠΎ схСмС Π±Π΅Π· ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π°Π²Ρ‚ΠΎΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, отсоСдинитС GPIO0 ΠΎΡ‚ Π·Π΅ΠΌΠ»ΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ модуля Π±Π΅Π· ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ USB-TTL ΠΎΡ‚ питания

11. Π’ мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ β€” ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°

12. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ 115200

13. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ Ρ‡Ρ‚ΠΎ происходит Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅

14. Когда ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ ΠΊ сСти, Ρ‚ΠΎ появятся надписи Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅ Β«WiFi connectedΒ» ΠΈ Β«Server startedΒ»

15. НиТС Π±ΡƒΠ΄Π΅Ρ‚ IP адрСс вашСго модуля ESP8266, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 192.168.1.248

16. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Π΅ любой Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, Π² строкС адрСса Π²Π±ΠΈΠ²Π°Π΅Ρ‚Π΅ Β«http://192.168.1.248/gpio/1Β»

17. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ€Ρ‚Π° ΠΈ Ссли ΠΊ ESP8266 ΠΊ GPIO2 Ρƒ вас ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ свСтодиод (Ρ‡Π΅Ρ€Π΅Π· рСзистор, разумССтся), Ρ‚ΠΎ ΠΎΠ½ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ.

18. Profit!

Автором этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ Arduino IDE для ESP8266 являСтся наш соотСчСствСнник ΠΈΠ· Π‘Π°Π½ΠΊΡ‚-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³Π° Иван Π“Ρ€ΠΎΡ…ΠΎΡ‚ΠΊΠΎΠ².

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Arduino IDE для ESP8266 с github

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Arduino IDE для ESP8266 с build сСрвСра

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄Β Arduino IDE для ESP8266

Π—Π°Π΄Π°Ρ‚ΡŒ вопросы Π°Π²Ρ‚ΠΎΡ€Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π˜Π²Π°Π½Ρƒ Π“Ρ€ΠΎΡ…ΠΎΡ‚ΠΊΠΎΠ²Ρƒ akaΒ igrr ΠΈΠ»ΠΈ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΎΠ± ошибкС Π²Β Arduino IDE для ESP8266 ΠΌΠΎΠΆΠ½ΠΎ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ Π½Π° нашСм Ρ„ΠΎΡ€ΡƒΠΌΠ΅.

Настройка Arduino IDE для программирования WiFi модуля ESP8266

Настройка Arduino IDE для программирования WiFi модуля ESP8266

ESP8266 это Π΄Π΅ΡˆΠΎΠ²Ρ‹Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСнныС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Wi-Fi. Они состоят ΠΈΠ· самодостаточного ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° с GPIO (дискрСтными Π²Ρ…ΠΎΠ΄Π°ΠΌΠΈ-Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ), Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ Π²Ρ…ΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΡ€Ρ‚Π°ΠΌΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ связи, I2C, SPI, ΠΈ самоС Π³Π»Π°Π²Π½ΠΎΠ΅ с Π±Π»ΠΎΠΊΠΎΠΌ Wi-Fi связи. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Π΅ΠΌΡ‹Π΅ ΠΊΠ°ΠΊ Π΄Π΅ΡˆΠΎΠ²Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Wi-Fi для ΠΏΠ»Π°Ρ‚ Arduino ΠΈ Raspberry Pi, ΠΎΠ½ΠΈ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Arduino IDE. Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ инструмСнтарий Β ESP8266 Π² Arduino IDE.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ описана ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ инструмСнтария для ESP8266, ΠΈ Π½Π°Ρ‡Π°Π»Π° программирования модуля ESP8266 Π² срСдС Arduino IDE.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ инструмСнтарий доступны Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅ здСсь:

https://github.com/esp8266/Arduino

Π¨Π°Π³ 1: Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΏΠ»Π°Ρ‚Ρ‹ ESP8266 Π² Настройки Arduino IDE

1. Π’ мСню ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ Π€Π°ΠΉΠ» -> Настройки


2. Π’ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ «ΠΠ°ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈ», Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ β€œΠ”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ссылки для ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° плат”, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²Ρ‹Π±ΠΎΡ€Π°, Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ:

для использования ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ESP8266:Β 

http://arduino.esp8266.com/stable/package_esp8266com_index.json

3. для использования послСднСй вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ESP8266:http://arduino.esp8266.com/staging/package_esp8266com_index.json


4. ΠšΠ»Π°Ρ†Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ OK.

Π¨Π°Π³ 2: Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ инструмСнтария ESP8266

1. Π’ мСню Arduino IDE Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ -> ΠŸΠ»Π°Ρ‚Ρ‹: -> ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ»Π°Ρ‚…



2. Π’ тСкстовом ΠΏΠΎΠ»Π΅ поиска ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΏΠ»Π°Ρ‚ Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅ ESP, Π·Π°Ρ‚Π΅ΠΌ Π²ΠΈΠ±Π΅Ρ€ΠΈΡ‚Π΅ esp8266 by ESP8266 Community ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Установка


3. Когда установка Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ, ΠΊΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ β€œΠ—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒβ€


Π¨Π°Π³ 3: ΠŸΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠ· Arduino IDE Π² ΠΏΠ»Π°Ρ‚Ρƒ ESP8266Β 

1. БоСдиняСм ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ESP8266 с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ кабСля USB.

2. МоТСм произвСсти ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ связи, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ² пустой скСтч ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ Π΄Π΅ΠΌΠΎ-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Blink.

3. Π’ срСдС Arduino IDE ΠΈΠ· мСню Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΏΠ»Π°Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄Π΅ΠΌ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС это β€œNodeMCU 0.9 (ESP-12 Module)”


4. Π’Π°ΠΊ ΠΆΠ΅ Π² мСню Arduino IDE Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ COM-ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Wi-Fi

5. НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ наш скСтч

Если всС ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΡƒΠ΄Π°Ρ‡Π½ΠΎ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ваша срСда Arduino IDE Π³ΠΎΡ‚ΠΎΠ²Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с модулями ESP8266.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π½Π°Ρ Wire Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Arduino ESP8266 core: elchupanibrei β€” LiveJournal

Вся боль ΠΎΡ‚ использования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° I2C ΡˆΠΈΠ½Ρ‹ для Arduino ESP8266 Ρ‚ΡƒΡ‚, Ρ‚ΡƒΡ‚, Ρ‚ΡƒΡ‚ ΠΈ здСсь.


Пока Π½Π° шинС ΠΎΠ΄ΠΈΠ½ slave всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ стоит Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ устройств ΠΈ ESP8266 Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π²ΠΈΡΠ½ΡƒΡ‚ΡŒ с ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ. Π›ΠΈΠ±Π° wire.h ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, Π° slave Π½Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π²Π΅ΡˆΠ°Π΅Ρ‚ SDA Π½Π° зСмлю ΠΈ ΠΆΠ΄Π΅Ρ‚ ΠΎΡ‚ мастСра SCL, Ρ‡Ρ‚ΠΎΠ± ΠΎΡ‚Π΄Π°Ρ‚ΡŒ ΠΎΡΡ‚Π°Π²ΡˆΠΈΠΉΡΡ кусок Π±Π°ΠΉΡ‚Π°. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ написан Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΎΠ± этом Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚ ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π° этот ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ slave Π½ΠΎΠ²ΠΎΠ΅ сообщСниС. Устройства Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Ρ‚ΠΊ наш slave ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ SDA. Π›ΠΈΠ±Π° Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ² Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒ SCL. Когда Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ Π½Π΅ΠΊΡƒΠ΄Π°, Π³Π»Π°Π²Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» встаСт ΠΊΠΎΠ»ΠΎΠΌ. Π§Π΅Ρ€Π΅Π· ~3 сСкунды, послС остановки loop(), срабатываСт WDT ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ пСрСгруТаСтся. Π‘Π°ΠΌΡ‹ΠΉ Ρ‚Ρ€Π΅Ρˆ ΠΈ ΡƒΠ³Π°Ρ€ начинаСтся Ссли slave — это часы Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΌ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ. ESP8266 пСрСгрузился, Π° часы всС ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ SDA ΠΈ ΠΆΠ΄ΡƒΡ‚ ΠΊΠΎΠ³Π΄Π° ΠΆΠ΅ wire.h с Π½ΠΈΠΌΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚. Π§Π΅Ρ€Π΅Π· ~3 сСкунды ΠΎΠΏΡΡ‚ΡŒ сработаСт WDT ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ снова пСрСзагрузится. ΠšΡ€ΡƒΠ³ замкнулся. НС ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π΅Ρ€Π³ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ питания Ρ‚ΠΊ часики Π² этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠΈΡ‚Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ.

Arduino сообщСство ΠΈ ΠΌΠΎΠ΄Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ„ΠΎΡ€ΡƒΠΌΠ° esp8266.ru ΠΌΠΎΡ€ΠΎΠ·ΠΈΠ»ΠΈΡΡŒ:
— Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ устройства
— Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ i2c ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° spi
— Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ МК с Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ i2c ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² esp ΠΏΠΎ uart
— Ρƒ мСня с ΠΎΠ΄Π½ΠΈΠΌ slave всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚…

Π’Π°ΠΊΠΎΠ΅ чувство, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ всС Π½Π° Π·Π°ΠΏΠ»Π°Ρ‚Π΅ Ρƒ Espressif. ΠŸΠΎΠΌΡƒΡ‡ΠΈΠ²ΡˆΠΈΡΡŒ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСсяцСв ΠΈ ΠΏΠΎΠΊΡƒΡ€ΠΈΠ² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ datasheet Π½Π° i2c пСрСписал Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΡƒ ΠΏΠΎΠ΄ Arduino. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ виснСт ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ. ВСстировал Π½Π° скоростях ΡˆΠΈΠ½Ρ‹ 10KHz, 15KHz, 25KHz, 50KHz 100KHz, 200KHz, 250KHz, 300KHz, 400kHz ΠΈ частотС камня 80MHz.

Π—Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ‚ΡƒΡ‚.

UDP: ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ стандарт Π½Π° i2c ΡˆΠΈΠ½Ρƒ здСсь.

UDP2: Народ разучился Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ read.me поэтому ΠΏΡ€ΠΎΠ΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽ Ρ‚ΡƒΡ‚.

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ twi.h ΠΈ core_esp8266_si2c.cpp Π² ΠΏΠ°ΠΏΠΊΠ΅ %USERPROFILE%\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.2\cores\esp8266.

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Wire.h ΠΈ Wire.cpp Π² ΠΏΠ°ΠΏΠΊΠ΅ %USERPROFILE%\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.2\library\Wire.

Π¦ΠΈΡ„Ρ€Ρ‹ 2.5.2 ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, зависят ΠΎΡ‚ вСрсии установлСнного ядра. Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ старый ΠΈ Π½Π° Π΅Π³ΠΎ мСсто Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ исходныС Ρ„Π°ΠΉΠ»Ρ‹ — просто ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π°ΠΊ — twi.h.OLD ΠΈ Ρ‚. Π΄. Если ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя Ρ„Π°ΠΉΠ»Π°, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π²ΠΎ врСмя компиляции. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π»ΠΈΠ½ΠΊΠΎΠ²Ρ‰ΠΈΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Ρ‚Π΅ΠΌ Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² *.h ΠΈ *.cpp, Π° Π½Π΅ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ. Π­Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ windows!!!

UDP3: ΠŸΠΎΡ…ΠΎΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ свалились с Π»ΡƒΠ½Ρ‹ ΠΈ Π½Π΅ Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ для Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ i2c ΡˆΠΈΠ½Ρ‹ Π»ΠΈΠ½ΠΈΠΈ SDA ΠΈ SCL Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ подтянуты ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ. ΠŸΠΎΡ‡Π΅ΠΌΡƒ, Ρ‡ΠΈΡ‚Π°Π΅ΠΌ Ρ‚ΡƒΡ‚ ΠΈ Ρ‚ΡƒΡ‚.

UDP4: Для сСнсорных ΠΏΠ°Π½Π΅Π»Π΅ΠΉ ΠΈ Π΄Π»ΠΈΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΊΡƒΡ‡Ρƒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… скоростСй: 10KHz, 15KHz, 25KHz, 50KHz. ΠŸΠ°Ρ€ΠΎΡ‡ΠΊΡƒ быстрых для Ρ€Π°Π·Π³ΠΎΠ½Π°: 250KHz, 300KHz, 600KHz. НапримСр экран Π½Π° PCF8574 Π»Π΅Π³ΠΊΠΎ взял ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ Π² 600KHz. Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ мСняСтся Ρ‚Π°ΠΊ — Wire.setClock(15000), Π³Π΄Π΅ число Π² Π³Π΅Ρ€Ρ†Π°Ρ…. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ² воврСмя ΠΎΡ‚Π²Π΅Ρ‚, Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒ SCL Π΄ΠΎ 250 микросСкунд, Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ частоту Π΄ΠΎ 4KHz. По совСту gihub ΡŽΠ·Π΅Ρ€Π° Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ссли Π² setup() сразу послС Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ†ΠΈΠΈ Π’Π‘Π•Π₯ устройств Π½Π° I2C Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ Wire.setClockStretchLimit(0), Π³Π΄Π΅ число Π² микросСкундах. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒ SCL Π΄ΠΎ бСсконСчности, Ρ‚Π΅ 0Hz. НСдостаток — Ссли Π½Π° шинС Π±Π΅Π΄Π°, вся систСма подвиснСт Π² бСсконСчном Ρ†ΠΈΠΊΠ»Π΅. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Ρ„ΠΈΡ‡Π° для отчаянных. Π›ΡƒΡ‡ΡˆΠ΅ Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ 1250 микросСкунд — скорости 0.8Hz Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ‚ΠΎΡ€ΠΌΠΎΠ·Ρƒ. Π¨ΠΈΡ€ΠΈΠ½Ρƒ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² смотрСл ΠΊΠ»ΠΎΠ½ΠΎΠΌ Saleae Logic.

Arduino + ESP8266 с нуля Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Wi-Fi Ρ‚Π΅Ρ€ΠΌΠΎΠΌΠ΅Ρ‚Ρ€Π°, Ρ‡Π°ΡΡ‚ΡŒ пСрвая / Π₯Π°Π±Ρ€

Π§Π°ΡΡ‚ΡŒ 1. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ESP8266

Π—Π°Ρ‡Π΅ΠΌ эта ΡΡ‚Π°Ρ‚ΡŒΡ? На Ρ…Π°Π±Ρ€Π΅ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ряд статСй ΠΏΡ€ΠΎ использованиС ESP Π² Ρ€Π°Π·Π½Ρ‹Ρ… конфигурациях, Π½ΠΎ ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ Π±Π΅Π· подробностСй ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ всС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ ΠΈ программируСтся. Π’ΠΈΠΏΠ° «я взял ESP, Π΄Π²Π΅ ΠΏΠ°Π»ΡŒΡ‡ΠΈΠΊΠΎΠ²Ρ‹Π΅ Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ, DHT22, Π·Π°ΠΊΠΈΠ½ΡƒΠ» Π² ΠΊΠΎΡ€ΠΎΠ±ΠΊΡƒ, потряс часик ΠΈ Ρ‚Π΅Ρ€ΠΌΠΎΠΌΠ΅Ρ‚Ρ€ Π³ΠΎΡ‚ΠΎΠ²!Β». Π’ ΠΈΡ‚ΠΎΠ³Π΅, получаСтся странно: Ρ‚Π΅, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ESP Π½Π΅ видят Π² сдСланном Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ, Π° Ρ‚Π΅, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ β€” Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, я Ρ€Π΅ΡˆΠΈΠ» Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ ESP, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ с Arduino ΠΈ внСшним ΠΌΠΈΡ€ΠΎΠΌ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠ½Π΅ попадались Π½Π° этом ΠΏΡƒΡ‚ΠΈ. Бсылки Π½Π° Aliexpress ΠΏΡ€ΠΈΠ²ΠΎΠΆΡƒ лишь для прСдставлСния порядка Ρ†Π΅Π½ ΠΈ внСшнСго Π²ΠΈΠ΄Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

Π˜Ρ‚Π°ΠΊ, Ρƒ мСня Π±Ρ‹Π»ΠΎ Π΄Π²Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, сСмь Ρ€Π°Π·Π½Ρ‹Ρ… сСнсоров, ΠΏΡΡ‚ΡŒ источников питания, Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π½Ρ‹ΠΉ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ DHT22 ΠΈ Ρ†Π΅Π»ΠΎΠ΅ мноТСство ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΊΠΎΠ² всСх сортов ΠΈ расцвСток, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ бСссчСтноС количСство сопротивлСний, кондСнсаторов ΠΈ Π΄ΠΈΠΎΠ΄ΠΎΠ². НС Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС это Π±Ρ‹Π»ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Ρ‚Π΅Ρ€ΠΌΠΎΠΌΠ΅Ρ‚Ρ€Π°, Π½ΠΎ Ссли ΡƒΠΆ Π½Π°Ρ‡Π°Π» Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ микроэлСктроникой, Ρ‚ΠΎ становится Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ.



ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ESP8266 Π½ΡƒΠΆΠ½ΠΎ напряТСниС 3.3Π’ ΠΈ Ρ‚ΠΎΠΊ Π½Π΅ Π½ΠΈΠΆΠ΅ 300мА. К соТалСнию, Arduino Uno Π½Π΅ Π² состоянии ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΎΠΊ, ΠΊΠ°ΠΊ Π½Π΅ Π² состоянии ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊΠΈ USB-UART (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρ‹) Ρ‚ΠΈΠΏΠ° FT232RL β€” ΠΈΡ… ΠΏΡ€Π΅Π΄Π΅Π» ΠΎΠΊΠΎΠ»ΠΎ 50мА. А Π·Π½Π°Ρ‡ΠΈΡ‚ придСтся ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅. И Π»ΡƒΡ‡ΡˆΠ΅ Π±Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Arduino Ρ‚ΠΎΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΎΡ‚ 3.3Π’, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Ρ‚ΠΈΠΏΠ° «я ΠΏΠΎΠ΄Π°Π» ΠΏΡΡ‚ΠΈΠ²ΠΎΠ»ΡŒΡ‚ΠΎΠ²Ρ‹ΠΉ сигнал Π½Π° Π²Ρ‹Π²ΠΎΠ΄ RX модуля ESP, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΏΠ°Ρ…Π½Π΅Ρ‚ ΠΏΠ°Π»Π΅Π½ΠΎΠΉ пластмассой?Β».

Π•ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

1. ΠšΡƒΠΏΠΈΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Π±Π»ΠΎΠΊ питания Π½Π° 3.3Π’.

2. ΠšΡƒΠΏΠΈΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ с рСгулятором напряТСния, ΠΏΠΎΠ½ΠΈΠΆΠ°ΡŽΡ‰ΠΈΠΉ 5Π’ Π΄ΠΎ 3.3Π’. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, это самый ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚.

3. Π‘ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ самому ΠΈΠ· рСгулятора AMS1117 ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚Π°Π½Ρ‚Π°Π»ΠΎΠ²ΠΎΠ³ΠΎ кондСнсатора Π½Π° 22ΠΌΠΊΠ€.

Π― Π²Ρ‹Π±Ρ€Π°Π» Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠ½Π΅ часто Π½ΡƒΠΆΠ½ΠΎ 3.3Π’, я ΠΆΠ°Π΄Π½Ρ‹ΠΉ ΠΈ я люблю Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ рСгуляторы прямо Π² Π±Π»ΠΎΠΊΠΈ питания.

Π‘ AMS1117 всС просто: Ссли ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π΅Π³ΠΎ тСкстом Π²Π²Π΅Ρ€Ρ…, Ρ‚ΠΎ напряТСниС Π½Π° Π½ΠΎΠ³Π°Ρ… растСт слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ: 0(Gnd), 3.3Π’ (Vout), 5Π’ (Vin).
ΠœΠ΅ΠΆΠ΄Ρƒ Π½ΡƒΠ»Π΅ΠΌ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½ΡƒΠΆΠ΅Π½ Ρ‚Π°Π½Ρ‚Π°Π»ΠΎΠ²Ρ‹ΠΉ кондСнсатор Π½Π° 22ΠΌΠΊΠ€ (Ρ‚Π°ΠΊ ΠΏΠΎ инструкции, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ссли ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ элСктролитичСский β€” я Π½Π΅ провСрял). Π£ Ρ‚Π°Π½Ρ‚Π°Π»ΠΎΠ²ΠΎΠ³ΠΎ SMD-кондСнсатора плюс Ρ‚Π°ΠΌ, Π³Π΄Π΅ полоска. НСмного Ρ‡ΡƒΠ΄ΠΎΠ²ΠΈΡ‰Π½ΠΎΠΉ ΠΏΠ°ΠΉΠΊΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для Ρ‚Π°ΠΊΠΎΠ³ΠΎ варварства SMD-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ:

ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ провСряйтС Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ напряТСниС. Если ΠΎΠ½ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС 3.3Π’ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 1.17Π’) β€” Π΄Π°ΠΉΡ‚Π΅ рСгулятору ΠΎΡΡ‚Ρ‹Ρ‚ΡŒ послС ΠΏΠ°ΠΉΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹. Если поставитС кондСнсатор большС, Ρ‡Π΅ΠΌ Π½Π° 22ΠΌΠΊΠ€, Ρ‚ΠΎ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ высокоС напряТСниС.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ AMS1117? Он ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Π•Π³ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ Π²Π΅Π·Π΄Π΅, Π΄Π°ΠΆΠ΅ Π² Arduino Uno, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, стоит AMS1117-5.0.
Если Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ схоТих Π³Π°Π±Π°Ρ€ΠΈΡ‚ΠΎΠ² ΠΈ Ρ†Π΅Π½Ρ‹, Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ простоС Π² использовании β€” Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅, поТалуйста.

Π’Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. НС знаю ΡƒΠΆ ΠΏΠΎΡ‡Π΅ΠΌΡƒ, Π½ΠΎ AMS1117 ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΊΠ°ΠΏΡ€ΠΈΠ·Π½ΠΎ относится ΠΊ качСству соСдинСний. ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹. Π›ΡƒΡ‡ΡˆΠ΅ β€” пропаяны. Π˜Π½Π°Ρ‡Π΅ ΠΎΠ½ Π½Π° тСстах Π²Ρ‹Π΄Π°Π΅Ρ‚ 3.3Π’, Π½ΠΎ ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Π½Π΅ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266

Π― Π²Ρ‹Π±Ρ€Π°Π» модСль 07, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρƒ Π½Π΅Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ мСталличСский экран, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π½Π°Π²ΠΎΠ΄ΠΎΠΊ, мСханичСских воздСйствий ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π΄ΠΈΠ°Ρ‚ΠΎΡ€. ПослСднСС обСспСчиваСт Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΠ³ΠΎΡ€Π΅Π²ΡˆΠΈΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΈ просто Π½Π°Π³Ρ€Π΅Π²ΡˆΠΈΠΌΡΡ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅ΡΡ‚ΡŒ Π³Π½Π΅Π·Π΄ΠΎ ΠΏΠΎΠ΄ внСшнюю Π°Π½Ρ‚Π΅Π½Π½Ρƒ.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ‡ΠΈΠΏ запустился Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ VCC ΠΈ CH_P Ρ‡Π΅Ρ€Π΅Π· рСзистор 10кОм. Если Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅Ρ‚, Ρ‚ΠΎ сгодится любой ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° 1-20кОм. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ модСль 07 Π΅Ρ‰Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ GPIO15 (самый Π±Π»ΠΈΠΆΠ½ΠΈΠΉ ΠΊ GND) Π±Ρ‹Π» Β«Π½Π° Π·Π΅ΠΌΠ»Π΅Β» (этого Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π½Π΅ Π²ΠΈΠ΄Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ соСдинСниС с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны).

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π±Π΅Ρ€Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊ USB-UART, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ Π½Π° 3.3Π’ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ RX ΠΊ TX, TX ΠΊ RX ΠΈ GND ΠΊ Β«Π·Π΅ΠΌΠ»Π΅Β» (Ρƒ мСня Π±Π΅Π· этого ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°). Если Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π° 3.3Π’, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ рСзисторный Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ напряТСния: соСдинитС ESP RX с TX ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· сопротивлСниС Π² 1кОм, Π° ESP RX с Β«Π·Π΅ΠΌΠ»Π΅ΠΉΒ» Ρ‡Π΅Ρ€Π΅Π· 2кОм. БущСствуСт масса Π±ΠΎΠ»Π΅Π΅ слоТных ΠΈ Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… способов ΡΠ²ΡΠ·Π°Ρ‚ΡŒ 3.3Π’ ΠΈ 5Π’, Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈ Ρ‚Π°ΠΊ сойдСт.

И соСдиняСмся Π½Π° скорости 9600 ΠΏΠΎ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ COM-ΠΏΠΎΡ€Ρ‚Ρƒ (ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² диспСтчСрС устройств).

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ SecureCRT, Putty Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚, Π° Ρ†Π΅Π½ΠΈΡ‚Π΅Π»ΠΈ Линукса ΠΈ Ρ‚Π°ΠΊ Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Π³Π΄Π΅ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ.

(AT+RST ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Ρ‡ΠΈΠΏ)

Если Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ происходит β€” Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ β€” Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅, Ссли всС Ρ€Π°Π²Π½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ происходит β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ соотвСтствиС TX/RX, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… мСстами ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΏΠ°ΡΡ‚ΡŒ ΠΊ Ρ‡ΠΈΠΏΡƒ.

Иногда Ρ‡ΠΈΠΏ Π² Ρ…ΠΎΠ΄Π΅ ΠΈΠ·Π΄Π΅Π²Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π² экспСримСнтов зависаСт ΠΈ Ρ‚ΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π½Π°Π΄ΠΎ ΠΎΠ±Π΅ΡΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒ, Π² Ρ‚ΠΎΠΌ числС ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΠ² ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΠ² Π΅Π³ΠΎ ΠΈΠ· USB), ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‡ΠΈΠΏΡƒ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΡ… ΠΊΡ€ΠΎΡ… питания, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΠΎΡ€Π½ΠΎ Ρ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Иногда фокусы с ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊΠΎΠΌ Π²Π΅ΡˆΠ°ΡŽΡ‚ USB-ΠΏΠΎΡ€Ρ‚. МоТно Π² качСствС Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ USB-ΠΏΠΎΡ€Ρ‚, Π½ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€.

Иногда ΠΏΡ€ΠΈ этом мСняСтся Π½ΠΎΠΌΠ΅Ρ€ COM-ΠΏΠΎΡ€Ρ‚Π°. Под Linux это ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ udev.

Если вмСсто тСкста ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ мусор, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ настройки скорости. НСкоторыС старыС Ρ‡ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° 115200.

На стартС Ρ‡ΠΈΠΏ нагрСваСтся, Π½ΠΎ Ссли ΠΎΠ½ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ горячий ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Π³Ρ€Π΅Ρ‚ΡŒΡΡ β€” ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ ΠΈ провСряйтС всС соСдинСния. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π° корпус Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΎ +3.3Π’, Ρ‡Ρ‚ΠΎΠ±Ρ‹ 5Π’ ΠΊ Π½Π΅ΠΌΡƒ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ «зСмля» ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊΠ° Π±Ρ‹Π»Π° соСдинСна с Β«Π·Π΅ΠΌΠ»Π΅ΠΉΒ» Ρ‡ΠΈΠΏΠ°. МодСли с мСталличСским экраном ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡΠΆΠ΅Ρ‡ΡŒ (Π½ΠΎ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ), Π° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π΅Π· экранов ΠΆΠ°Π»ΡƒΡŽΡ‚ΡΡ, ΠΌΠΎΠ» Π΄Π°ΠΆΠ΅ нСбольшая ошибка ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ послСднСй Π² ΠΆΠΈΠ·Π½ΠΈ Ρ‡ΠΈΠΏΠ°. Но это я Π½Π΅ провСрял.

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°

Мой Π²Ρ‹Π±ΠΎΡ€ β€” NodeMCU. Π£ Π½Π΅Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΆΠ΅Π»Π΅Π·Π°, Π½ΠΎ это ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ окупаСтся простотой ΠΊΠΎΠ΄Π° ΠΈ Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.

Π’Π°ΠΊ ΠΆΠ΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ NodeMCU flasher ΠΈ LuaLoader (послСднСС β€” ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ, Π΅ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с этой ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ).

Π’Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Ρ‡ΠΈΠΏ. ПодсоСдиняСм GPIO0 ΠΊ Π·Π΅ΠΌΠ»Π΅ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Ρ‡ΠΈΠΏ:

Если Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ происходит ΠΈ поля AP MAC/STA MAC пустыС β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π΅Ρ‰Π΅ Ρ€Π°Π·, Ρ‡Ρ‚ΠΎΠ±Ρ‹ GPIO0 Π±Ρ‹Π» Π½Π° Β«Π·Π΅ΠΌΠ»Π΅Β».
Если ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Π½Π°Ρ‡Π°Π»Π°ΡΡŒ, Π½ΠΎ зависла β€” посмотритС Π² Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Log, Ρƒ мСня ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ этот Ρ‡ΠΈΠΏ отказался ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° FT232RL, Π½ΠΎ Π·Π°Ρ‚ΠΎ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ»ΡΡ Π½Π° PL2303HX Π½Π° скорости 576000. PL2303HX Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° 3.3Π’, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ пластиковый корпус ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠ°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ с 5V Π½Π° 3.3V, Π΅ΡΡ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ с ΠΏΡΡ‚ΡŒΡŽ Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ: 3.3, 5, TX, RX, Gnd.


ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: STA MAC помСнялся. ΠŸΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°ΡŽ, Ρ‡Ρ‚ΠΎ flasher Π΅Π³ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π», Π½ΠΎ трСбуСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°.

Для экономии сил ΠΈ Π½Π΅Ρ€Π²ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΠ³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚.

Π•ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹Π΅ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ с ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ Ρ€Π°Π·Π²ΠΎΠ΄ΠΊΠΎΠΉ.
Π•ΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΊ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅.
Π•ΡΡ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ с ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΈΠ΅ ΠΊΠΈΡ‚-ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Ρ‹ ΠΈ послоТнСС β€” ESP8266-EVB
Π•ΡΡ‚ΡŒ с Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌ USB-Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ΠΎΠΌ β€” NodeMCU Development Board. Под Π½Π΅Π΅ Π΄Π°ΠΆΠ΅ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΡˆΠΈΠ»Π΄Ρ‹ Π΄Π΅Π»Π°ΡŽΡ‚.

Если ΠΆΠ΅ Π²Ρ‹, ΠΊΠ°ΠΊ ΠΈ я, Π½Π΅ слишком Π»ΡŽΠ±ΠΈΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Ρ‚ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ всСго Π±Ρ€Π°Ρ‚ΡŒ с запасом, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ‹Ρ‚, ΠΊΠ°ΠΊ говорят, прямо ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»Π΅Π½ количСству соТТСнных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

Π¦Π΅Π½Π½Ρ‹Π΅ ссылки ΠΈΠ· ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²:
NodeMCU custom builds
Programming ESP8266-EVB with Arduino IDE
ОбъяснСниС ΠΏΡ€ΠΎ Ρ‚Π°Π½Ρ‚Π°Π»ΠΎΠ²Ρ‹ΠΉ кондСнсатор.

Update: Π·Π°ΠΌΠ΅Π½ΠΈΠ» Π² тСкстС Β«ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Β» Π½Π° Β«ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊ USB-UARTΒ» ΠΈΠ»ΠΈ просто Β«ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊΒ». По ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Β«ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Β» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‡Π°Ρ‰Π΅, Π½ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, Β«ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊ USB-UARTΒ» Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½Π΅Π΅.

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° esp8266 Ρ‡Π΅Ρ€Π΅Π· Arduino IDE

ESP8266 – это популярный китайский ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Espressif, основным достоинством ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ являСтся встроСнный интСрфСйс WiFi ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ. Π‘ΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· Β Arduino IDE,вСдь Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ скСтчСй ΠΌΠΎΠ³ΡƒΡ‚ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ESP8266. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ· сСбя прСдставляСт стандартная ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ESP 8266, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эти ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π² ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΉ для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π°Ρ€Π΄ΡƒΠΈΠ½Ρ‰ΠΈΠΊΠΎΠ²Β Arduino IDE. ΠœΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ срСду программирования, ΠΊΠ°ΠΊ с Π΅Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скСтч ΠΈ ΠΊΠ°ΠΊ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ WiFi-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ.

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ESP8266 с WiFi

БСгодня Π½Π° Π±Π°Π·Π΅ Ρ‡ΠΈΠΏΠ° ESP8266 выпускаСтся большоС количСство ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, ΠΎ Π½ΠΈΡ… ΠΌΡ‹ писали Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅, посвящСнной этому ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ. ЗаводскиС ESP8266 ΠΈΠ΄ΡƒΡ‚ со стандартной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Espressif. Π­Ρ‚ΠΎΡ‚ софт позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Π²Π°ΠΉ-Ρ„Π°ΠΉ ΠΊΠ°ΠΊ с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΌΠΎΠ΄Π΅ΠΌΠΎΠΌ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ посрСдством AT ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π°ΡŽΡ‚ΡΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚. Β Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Β«ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈΒ» ΠΊΠ°ΠΊ внСшнСС WiFi устройство (Π² зависимости ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ° доступа, ΠΈ рСтранслятор).

Но ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΌ прСимущСством ESP8266 являСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ вСшниС устройства ΠΈ программируя Π»ΠΎΠ³ΠΈΠΊΡƒ систСму Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ. Π’ΠΎΡ‚ ΠΎΠ± этом ΠΌΡ‹ ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ.

Как ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ ESP8266

Бтандартная ΠΌΠΈΠΊΡ€ΠΎΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Π½ΡƒΡ‚Ρ€ΠΈ ESP8266 Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ наши возмоТности, Π½ΠΎ ΠΈ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ нСдостатками (ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ интСрфСйс ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ), Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². Если ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ESP8266 ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚ΡƒΠ΄Π° свою ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ ΠΈΠ· Π²Π½Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. МоТно Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ нСсколько основных способов ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ESP8266:

  • ИспользованиС β€œΡ€ΠΎΠ΄Π½ΠΎΠ³ΠΎβ€ SDK. Компания Espressif выпустила Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ собствСнных ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ. SDK прСдоставляСт ΡˆΠΈΡ€ΠΎΠΊΠΈΠΉ спСктр возмоТностСй, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌ довольно-Ρ‚Π°ΠΊΠΈ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π² Π²ΠΈΠ΄Ρƒ Π½Π΅ совсСм ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠ³ΠΎ ΠΈ приятного интСрфСйса.
  • Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. На просторах ВсСмирной ΠΏΠ°ΡƒΡ‚ΠΈΠ½Ρ‹ Π΅ΡΡ‚ΡŒ мноТСство ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… со встроСнным ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ. Π‘Ρ€Π΅Π΄ΠΈ мноТСства Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ навСрняка найдутся ΠΈ Ρ‚Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρƒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ Π΅ΡΡ‚ΡŒ нСдостатки. Они ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌΠΈ, Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π½Π΅ совсСм Ρ‚Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎ большими. Из-Π·Π° встроСнного ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° софт сильно Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ΠžΠ—Π£, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅.
  • Настройка Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· WEB-интСрфСйс. БущСствуСт ряд ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ESP8266 Ρ‡Π΅Ρ€Π΅Π· ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-интСрфСйс. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ привСсти коммСрчСский софт HOME-SMART. НСдостатком ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ являСтся довольно-Ρ‚Π°ΠΊΠΈ ΡƒΠ·ΠΊΠΈΠΉ спСктр возмоТностСй.
  • ИспользованиС Arduino IDE. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… способов написания ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для ESP, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‡Π°Ρ‰Π΅ всСго. Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ рассматриваСмой IDE Π΅ΡΡ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ ряд достоинств, Ρ€Π΅Ρ‡ΡŒ ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅.

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ESP 8266 Π² Arduino IDE

ΠŸΠΎΡ‡Π΅ΠΌΡƒ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ESP 8266 ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE? Π•ΡΡ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ ряд ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π°Π²Π΄Ρ‹Π²Π°ΡŽΡ‚ использованиС ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π°Π½Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΎΠ½Π° ΠΎΡ‡Π΅Π½ΡŒ проста. Π‘ΠΊΠ΅Ρ‚Ρ‡ΠΈ Π² Arduino IDE ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π½Π° языкС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΏΠ»Π°Π½Π΅ синтаксиса Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ Π‘/Π‘++. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для программирования ΠΏΠ»Π°Ρ‚Ρ‹ Ардуино, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ для написания ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΊ ESP8826 (ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, pinMode(), digitalRead() ΠΈ ΠΏΡ€.). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ссли Π²Ρ‹ писали скСтчи для ΠΏΠ»Π°Ρ‚Ρ‹ Arduino, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с написаниС ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ.

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Arduino IDE ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ процСсс программирования. НСкоторыС ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ для ESP8266. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΏΡ€ΠΈ создании софта навСрняка пригодятся Ρ‚Π°ΠΊΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΊΠ°ΠΊ:

  • WiFi ESP8266. ОбъСмная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с бСспроводной ΡΠ΅Ρ‚ΡŒΡŽ. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ IP ΠΈ MAC адрСс Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… (ΠΊΠ»ΠΈΠ΅Π½Ρ‚, Ρ‚ΠΎΡ‡ΠΊΠ° доступа), Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π³Π½ΠΎΡΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ доступа ΠΈ ΠΏΡ€.
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ количСство Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.
  • Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠŸΠ—Π£.
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ обСспСчиваСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ…, спСцифичСских для ESP 8266 Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ стороТСвым Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ. ΠšΡ€ΠΎΠΌΠ΅ этого, Π² состав ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля входят Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ дСвайса, опрСдСлСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° свободной памяти ΠΈ Ρ‚.Π΄.

И это лишь Π²Π΅Ρ€Ρ…ΡƒΡˆΠΊΠ° айсбСрга. Π£ Arduino IDE Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ нСсколько ΠΌΠ΅Π½Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Ρ… прСимущСств.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ардуино с ESP8266, для Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ произвСсти ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ настройку. ИмСнно ΠΎ Π½Π΅ΠΉ ΠΌΡ‹ сСйчас ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Arduino IDE

Для Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° свой ПК ΠΊΡ€Π°ΠΉΠ½ΡŽΡŽ Π²Π΅Ρ€ΡΠΈΡŽ срСды Arduino IDE. Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-сайтС. На ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания ΡΡ‚Π°Ρ‚ΡŒΠΈ крайняя вСрсия IDE – это 1.8.5. ПослС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ инсталляции срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π΅ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈ Π² Ρ€Π°Π·Π΄Π΅Π» Π€Π°ΠΉΠ» > Настройки. Π’Π°ΠΌ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅ для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ссылок ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΏΠ»Π°Ρ‚. Π’ Π½Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ http://arduino.esp8266.com/stable/package_esp8266com_index.json ΠΈ ΠΊΠ»Π°Ρ†Π½ΡƒΡ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΡƒ ОК.

ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ»Π°Ρ‚ Π² Arduino IDEΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ»Π°Ρ‚ Π² Arduino IDEΠ—Π°Ρ‚Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ > ΠŸΠ»Π°Ρ‚Π°. Π’Π°ΠΌ Π±ΡƒΠ΄Π΅ΠΌ прСдставлСн список доступных ΠΏΠ»Π°Ρ‚. Но Π½Π° интСрСсуСт ΠΏΡƒΠ½ΠΊΡ‚ ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ»Π°Ρ‚. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ запуску Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π°. Π’ Π½Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡƒΠ½ΠΊΡ‚ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ esp8266 by ESP8266 Community ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΌΡƒ. Π’Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Ρ‹Π΅ манипуляции ΠΏΡ€ΠΈΠ²Π΅Π΄ΡƒΡ‚ ΠΊ появлСнию ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΠΈ Установка. НуТно Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ (Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΊΡ€Π°ΠΉΠ½ΡŽΡŽ). Π”Π°Π»Π΅Π΅ Π½Π°Π΄ΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΡƒΡŽ Π·Π° установку. ПослС этого срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π°Ρ‡Π½Π΅Ρ‚ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹. Π­Ρ‚ΠΎ Π½Π΅ Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ вСсит всСго 150 ΠœΠ‘.

ВозвращаСмся ΠΊ списку ΠΏΠ»Π°Ρ‚. ПослС инсталляции ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля Ρ‚Π°ΠΌ появилось нСсколько Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ рассматриваСмому ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ. Надо Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Generic ESP8266 Module. Π—Π°Ρ‚Π΅ΠΌ слСдуСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ входящий ΠΏΡƒΠ½ΠΊΡ‚, Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Π’Π°ΠΌ ΠΆΠ΅ слСдуСт Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ модуля (частота, объСм flash-паммяти). На этом настройка ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ срСды Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ESP8266 Π½Π΅ потрСбуСтся ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ², Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ рассматриваСмый Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ всСго нСсколько ΠΏΠΈΠ½ΠΎΠ². Π’Ρ‹Ρ…ΠΎΠ΄Ρ‹ TX/RX ΠΈ зСмлю Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΎΡ€Ρƒ TTL-USB (Π΅Π³ΠΎ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π½Π°Π΄ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ USB). Π”Π°Π»Π΅Π΅ слСдуСт ΠΏΠΎΠ΄ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Π² 3.3Π’ ΠΊ ΠΏΠΈΠ½Ρƒ VCC.

Π’Π°ΠΆΠ½ΠΎ! НС стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ ΠΎΡ‚ USB-TTL ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ модуля. Π›ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ внСшний источник питания.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ GPIO0 ΠΊ Π·Π΅ΠΌΠ»Π΅. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π²ΠΎ flash-ΠΏΠ°ΠΌΡΡ‚ΡŒ. Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ происходит сразу ΠΆΠ΅, Π±Π΅Π· отсоСдинСния ΠΎΡ‚ GPIO.

Π’Π°ΠΆΠ½ΠΎ! ΠŸΠ΅Ρ€Π΅Π΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для ESP8266 Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ. Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠ΅Ρ€Π΅Π΄Ρ‘Ρ€Π½ΡƒΠ² ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΠΎΠ΄Π°Π² зСмлю Π½Π° RESET.

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ скСтча

ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча элСмСнтарСн. Π’ самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ SSID, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π²Π°ΠΉ-Ρ„Π°ΠΉ. ПослС этого слСдуСт ΠΊΠ»Π°Ρ†Π½ΡƒΡ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΡƒ компиляции ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ скСтч Π½Π° устройство.

Π’Π°ΠΆΠ½ΠΎ! Если Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π±Ρ‹Π» ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ Π±Π΅Π· Π°Π²Ρ‚ΠΎΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ρ‚ΠΎ Π½Π°Π΄ΠΎ ΠΎΡ‚ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΏΠΈΠ½ GPIO0 ΠΎΡ‚ Π·Π΅ΠΌΠ»ΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅.

Π”Π°Π»Π΅Π΅ слСдуСт ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ > ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°. Надо Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ 115200. ПослС этого стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π». Если ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ сСти, Ρ‚ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΌ случаС Π½Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ появится ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ надписи. Π’Π½ΠΈΠ·Ρƒ Π±ΡƒΠ΄Π΅Ρ‚ располоТСн IP адрСс Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ модуля.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ESP8266 Π² срСдС Arduino IDE

Π’ΠΎΠ»ΡˆΠ΅Π±Π½Π°Ρ ΠΏΠ°Π»ΠΎΡ‡ΠΊΠ° POV Π½Π° ESP8266

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ со своим Ρ€Π΅Π±Π΅Π½ΠΊΠΎΠΌ Π½Π° Π½ΠΎΠ²ΠΎΠ³ΠΎΠ΄Π½ΠΈΡ… ΠΊΠ°Π½ΠΈΠΊΡƒΠ»Π°Ρ… πŸ™‚

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°:Β MagicWandPOW
Π‘Ρ…Π΅ΠΌΠ°:Β Π’ΠΎΠ»ΡˆΠ΅Π±Π½Π°Ρ ΠΏΠ°Π»ΠΎΡ‡ΠΊΠ° POV Π½Π° ESP8266

ESP8266 Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° WebSocketsServer

Π‘ΠΊΠ΅Ρ‚Ρ‡:Β Step14-WebSockedServer

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ порядку.
Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ»Π°Π³ΠΈΠ½ Π² срСду ARDUINO IDE, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму Π² ESP8266.
Если Ρƒ нас Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму прямо Π½Π° кристаллС ESP8266 Π·Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ SD ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ Π²Π΅Π± страницы ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠ΄?

Бсылка Π½Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΏΠ»Π°Π³ΠΈΠ½Π΅ здСсь:Β  ESP8266FS-0.3.0.zip

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ порядку.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ TickerScheduler.
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠ°ΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π‘ΠΊΠ΅Ρ‚Ρ‡:Β Step13-TickerScheduler

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ порядку.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ связи Web страницы ΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²Β DHT11, DHT22/AM2302/RHT03Β   – ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΈ влаТности Π½Π° страницу ΠΈΠ· ESP8266 Π² Π²ΠΈΠ΄Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.
ВозмоТности page.htm?*

Step12-Graf-DHT

Β 

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ порядку.
Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свои WEB страницы Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ HTML ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ – ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° страницу ΠΈΠ· ESP8266 Π² Π²ΠΈΠ΄Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.
ВозмоТности page.htm?*

Step11-GrafNoHTML

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ порядку.
Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свои WEB страницы Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ HTML ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ – ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° страницу ΠΈΠ· ESP8266.
ВозмоТности page.htm?*

Step10-DataNoHTML

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ порядку.
Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свои WEB страницы Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ HTML.
ВозмоТности page.htm?*

Step9-CodNoHTML

Архив ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ здСсь:Β https://github.com/tretyakovsa/Sonoff_Loader

ESP8266 ΠΈ Arduino, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, распиновка / Π₯Π°Π±Ρ€

ΠŸΡ€ΠΈΠ²Π΅Ρ‚ geektimes. Π’Π΅ΠΌΠ° ESP8266, ΠΊΠ°ΠΊ ΠΈ IoT(ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Π²Π΅Ρ‰Π΅ΠΉ), всё большС Π½Π°Π±ΠΈΡ€Π°Π΅Ρ‚ популярности, ΠΈ ΡƒΠΆΠ΅ Arduino ΠΏΠΎΠ΄Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρƒ β€” добавляя эти Wi-Fi ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π² список ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠ»Π°Ρ‚.
Но ΠΊΠ°ΠΊ ΠΆΠ΅ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ? И Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π±Π΅Π· Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ? БСгодня ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ± этом ΠΈ ΠΏΠΎΠΉΠ΄Ρ‘Ρ‚ Ρ€Π΅Ρ‡ΡŒ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

ЗабСгая Π½Π°ΠΏΠ΅Ρ€Ρ‘Π΄, скаТу, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ вторая ΡΡ‚Π°Ρ‚ΡŒΡ, ΡƒΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ практичСская, ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ программирования модуля ESP8266 Π² срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Arduino IDE. Но, ΠΎΠ±ΠΎ всём ΠΏΠΎ порядку.

Π­Ρ‚ΠΎΡ‚ Π²ΠΈΠ΄Π΅ΠΎΡ€ΠΎΠ»ΠΈΠΊ, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», прСдставлСнный Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅.



На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚, сущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ разновидностСй этого модуля, Π²ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…:

А Π²ΠΎΡ‚ распиновка ESP01, ESP03, ESP12:


* Π”Π°Π½Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ качСствС Π½Π° ΠΎΡ„Ρ„. сайтС pighixxx.com.

Π›ΠΈΡ‡Π½ΠΎ ΠΌΠ½Π΅, большС всСго нравится вСрсия ESP07. Как ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π·Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΡ‚ Π΅ΡΡ‚ΡŒ мСталличСский экран (ΠΎΠ½ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ микросхСмы ΠΎΡ‚ Π²Π½Π΅ΡˆΠ½ΠΈΡ… Π½Π°Π²ΠΎΠ΄ΠΎΠΊ, Ρ‚Π΅ΠΌ самым обСспСчиваСт Π±ΠΎΠ»Π΅Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ), своя кСрамичСская Π°Π½Ρ‚Π΅Π½Π½Π°, Ρ€Π°Π·ΡŠΡ‘ΠΌ для внСшнСй Π°Π½Ρ‚Π΅Π½Π½Ρ‹. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² ΠΊ Π½Π΅ΠΌΡƒ внСшнюю Π°Π½Ρ‚Π΅Π½Π½Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΈΠΏΠ° Π±ΠΈΠΊΠ²Π°Π΄Ρ€Π°Ρ‚, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅, Ρ‚ΡƒΡ‚ Π΅ΡΡ‚ΡŒ Π½Π΅ΠΌΠ°Π»ΠΎ ΠΏΠΎΡ€Ρ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π° Π²Ρ‹Π²ΠΎΠ΄Π°, Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… GPIO(General Purpose Input Output β€” ΠΏΠΎΡ€Ρ‚Ρ‹ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния), ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ β€” ΠΏΠΈΠ½ΠΎΠ².

Π”Π°Π²Π°ΠΉΡ‚Π΅ вСрнёмся ΠΊ нашим Π±Π°Ρ€Π°Π½Π°ΠΌ Wi-Fi модулям ΠΈ Arduino. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅, я Π±ΡƒΠ΄Ρƒ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ESP8266(ΠΌΠΎΠ΄Π΅Π»ΠΈ ESP01) ΠΊ Arduino Nano V3.

Но, данная информация Π±ΡƒΠ΄Π΅Ρ‚ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ESP8266 ΠΈ Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ€Π°Π·Π½Ρ‹Ρ… Arduino ΠΏΠ»Π°Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ самой популярной Arduino UNO.

ΠŸΠ°Ρ€Ρƒ слов ΠΏΠΎ Π½ΠΎΠΆΠΊΠ°ΠΌ ESP01:

Vcc ΠΈ GND(Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π²Ρ‹ΡˆΠ΅ это 8 ΠΈ 1) β€” ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅, Π½Π° Π½ΠΎΠΆΠΊΡƒ Vcc ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ, судя ΠΏΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΎΡ‚ 3 Π΄ΠΎ 3.6 Π’, Π° GND β€” зСмля (минус питания). Π― Π²ΠΈΠ΄Π΅Π», ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π» этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΊ Π΄Π²ΡƒΠΌ AA аккумуляторам (напряТСниС питания Π² этом случаС Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 2.7 Π’) ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π±Ρ‹Π» работоспособным. Но всё ΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ напряТСний, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ β€” ваши ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π­Ρ‚ΠΎΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ основан Π½Π° 3.3 Π’ Π»ΠΎΠ³ΠΈΠΊΠ΅, Π° Arduino Π² основном β€” 5 Π’ Π»ΠΎΠ³ΠΈΠΊΠ°. 5 Π’ запросто ΠΌΠΎΠ³ΡƒΡ‚ вывСсти ΠΈΠ· строя ESP8266, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Π½Π° Π½Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅.

β€” На ΠΌΠΎΠ΅ΠΉ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΊΠ΅ Π΅ΡΡ‚ΡŒ Π½ΠΎΠΆΠΊΠ°, Π³Π΄Π΅ написано 3.3 Π’, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‘?

НавСрноС ΠΏΠΎΠ΄ΡƒΠΌΠ°Π΅Ρ‚Π΅ Π²Ρ‹. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ESP8266 довольно Ρ‚Π°ΠΊΠΈ ΠΏΡ€ΠΎΠΆΠΎΡ€Π»ΠΈΠ²Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΈ Π² ΠΏΠΈΠΊΠ°Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ Ρ‚ΠΎΠΊΠΈ Π΄ΠΎ 200 мА, ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ никакая Π°Ρ€Π΄ΡƒΠΈΠ½ΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ способна Π²Ρ‹Π΄Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΎΠΊ, Ρ€Π°Π·Π²Π΅ Ρ‡Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ являСтся Arduino Due, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‚ΠΎΠΊ ΠΏΠΎ Π»ΠΈΠ½ΠΈΠΈ 3.3 Π’ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ 800 мА, Ρ‡Π΅Π³ΠΎ с запасом Ρ…Π²Π°Ρ‚ΠΈΡ‚, Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΆΠ΅ случаях ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ стабилизатор Π½Π° 3.3 Π’, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ AMS1117 3.3 Π’. Π’Π°ΠΊΠΈΡ… Π²Π°Π»ΠΎΠΌ ΠΊΠ°ΠΊ Π² ΠšΠΈΡ‚Π°Π΅, Ρ‚Π°ΠΊ ΠΈ Ρƒ нас.

НоТка RST 6 β€” ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° Β«ΠΆΠ΅Π»Π΅Π·Π½ΠΎΠΉΒ» для ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ модуля, ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ΄Π°Π² Π½Π° Π½Π΅Ρ‘ Π½ΠΈΠ·ΠΊΠΈΠΉ логичСский ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ. Π₯ΠΎΡ‚ΡŒ ΠΈ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ я этим ΠΏΡ€Π΅Π½Π΅Π±Ρ€Ρ‘Π³, Π½ΠΎ всё ΠΆΠ΅ Π²Π°ΠΌ ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ Β«ΠΏΡ€ΠΈΠΆΠΈΠΌΠ°Ρ‚ΡŒΒ» Π΄Π°Π½Π½ΡƒΡŽ Π½ΠΎΠ³Ρƒ рСзистором Π½Π° 10 кОм ΠΊ ΠΏΠ»ΡŽΡΡƒ питания, Π΄Π°Π±Ρ‹ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ модуля, Π° Ρ‚ΠΎ Ρƒ мСня пСрСзагруТался ΠΎΡ‚ ΠΌΠ°Π»Π΅ΠΉΡˆΠΈΡ… Π½Π°Π²ΠΎΠ΄ΠΎΠΊ.

НоТка CP_PD 4(ΠΈΠ»ΠΈ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ EN) β€” слуТит, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅, для Β«ΠΆΠ΅Π»Π΅Π·Π½ΠΎΠ³ΠΎΒ» ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° модуля Π² ΡΠ½Π΅Ρ€Π³ΠΎΡΠ±Π΅Ρ€Π΅Π³Π°ΡŽΡ‰ΠΈΠΉ Ρ€Π΅ΠΆΠΈΠΌ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ потрСбляСт ΠΎΡ‡Π΅Π½ΡŒ малСнький Ρ‚ΠΎΠΊ. Ну ΠΈ снова β€” Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ лишним Β«ΠΏΡ€ΠΈΠΆΠ°Ρ‚ΡŒΒ» эту Π½ΠΎΠ³Ρƒ рСзистором Π½Π° 10 кОм ΠΊ ΠΏΠ»ΡŽΡΡƒ ΠΏΠΈΡ‚Π°Π»ΠΎΠ²Π°. На Π²ΠΈΠ΄Π΅ΠΎ я Ρ‚ΡƒΠΏΠΎ Π·Π°ΠΊΠΎΡ€ΠΎΡ‚ΠΈΠ» эту Π½ΠΎΠ³Ρƒ Π½Π° Vcc, ΠΏΠΎΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ Π½Π΅ оказалось Ρ‚Π°ΠΊΠΎΠ³ΠΎ рСзистора.

Ноги RXD0 7 TXD0 2 β€” Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ UART, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Π½ΠΎ вСдь Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΊΠ°ΠΊ GPIO(GPIO3 ΠΈ GPIO1 соотвСствСнно). GPIO3 Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ Π½Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‡Π΅Π½, Π½ΠΎ Π² Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚Π΅ ΠΎΠ½ Π΅ΡΡ‚ΡŒ:

К стати, ΠΊ Π½ΠΎΠΆΠΊΠ΅ TXD0 2 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ свСтодиод Β«ConnectΒ», ΠΈ Π³ΠΎΡ€ΠΈΡ‚ ΠΎΠ½ ΠΏΡ€ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΌ логичСском ΡƒΡ€ΠΎΠ²Π½Π΅ Π½Π° GPIO1, Π½Ρƒ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ отправляСт Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎ UART.

GPIO0 5 β€” ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ€Ρ‚ΠΎΠΌ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² Ρ€Π΅ΠΆΠΈΠΌ программирования. ДСлаСтся это ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² этот ΠΏΠΎΡ€Ρ‚ ΠΊ Π½ΠΈΠ·ΠΊΠΎΠΌΡƒ логичСскому ΡƒΡ€ΠΎΠ²Π½ΡŽ(Β«ΠΏΡ€ΠΈΠΆΠ°Π²Β» ΠΊ GND) ΠΈ ΠΏΠΎΠ΄Π°Π² ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ. На Π²ΠΈΠ΄Π΅ΠΎ я дСлаю это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ. ПослС ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ β€” Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΡƒ/ΠΎΡ‚ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ(ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²ΠΎ врСмя ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Ρ€Π΅ΠΆΠΈΠΌ программирования, ΠΈ остаётся Π² Π½Ρ‘ΠΌ Π΄ΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ).

GPIO2 3 β€” ΠΏΠΎΡ€Ρ‚ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°.

И Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ Π½Π΅ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ GPIO Wi-Fi модуля ΠΌΠΎΠΆΠ΅Ρ‚ бСзопасно Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊ Π΄ΠΎ 6 мА, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ Π½Π΅ ΡΠΏΠ°Π»ΠΈΡ‚ΡŒ, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΡ‚Π°Π²ΡŒΡ‚Π΅ рСзисторы ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ€Ρ‚Π°ΠΌ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° на… ВспоминаСм Π·Π°ΠΊΠΎΠ½ Ома R = U/I = 3.3Π’ / 0.006 А = 550 Ом, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Π½Π° 560 Ом. Или ΠΆΠ΅ ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π°ΠΉΡ‚Π΅ этим, ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠ΄ΠΈΠ²Π»ΡΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΎ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π’ ESP01 всС GPIO ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ШИМ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΊ нашим Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘ΠΌ GPIO, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ GPIO0-3 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ двигатСля, аля L293 / L298 ΠΈ Ρ€ΡƒΠ»ΠΈΡ‚ΡŒ двумя двигатСлями, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ°Ρ‚Π΅Ρ€Π°, ΠΈΠ»ΠΈ ΠΆΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ RGB Wi-Fi ΠΏΡ€ΠΈΠ±Π»ΡƒΠ΄Ρƒ. Π”Π°, Π΄Π°, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π° Π±ΠΎΡ€Ρ‚Ρƒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡Π΅Π³ΠΎ, ΠΈ для ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² скрипач Arduino Π½Π΅ Π½ΡƒΠΆΠ΅Π½, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. А Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ESP07 Ρ‚ΠΎ Ρ‚Π°ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΊ Ρƒ Uno, Ρ‡Ρ‚ΠΎ Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΆΠ΅ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π±Π΅Π· Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ. ΠŸΡ€Π°Π²Π΄Π° Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ нСприятный ΠΌΠΎΠΌΠ΅Π½Ρ‚, Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ² Ρƒ ESP01 Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅Ρ‚, Π° Ρƒ ESP07 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½, ADC зовётся. Π­Ρ‚ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ усугубляСт Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΎΡ€ Π² ΠΏΠΎΠΌΠΎΡ‰ΡŒ.

Всё Π²Ρ€ΠΎΠ΄Π΅ ΠΊΠ°ΠΊ ΠΏΠΎ распиновкС пояснил, ΠΈ Π²ΠΎΡ‚ схСма ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ESP8266 ΠΊ Arduino Nano:

Π’ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π° Arduino Nano ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ° Π½Π° Π½ΠΎΠΆΠΊΠ°Ρ… RST ΠΈ GND? Π­Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΊΠ° Π½Π΅ мСшала ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ модуля, Π² случаС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ESP8266 ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Arduino β€” ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ условиС.

Π’Π°ΠΊ ΠΆΠ΅ Ссли ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚Π΅ ΠΊ Arduino β€” RX модуля Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ΄Ρ‚ΠΈ ΠΊ RX Π°Ρ€Π΄ΡƒΠΈΠ½ΠΊΠΈ, TX β€” TX. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ микросхСма ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΠΆΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ Π½ΠΎΠΆΠΊΠ°ΠΌ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ Π² пСрСкрСстном порядкС.

Π’Π°ΠΊ ΠΆΠ΅ Π½Π΅ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ΅Π½ рСзистивный Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, состоящий ΠΈΠ· рСзисторов Π½Π° 1 кОм ΠΈ 2 кОм (ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ· Π΄Π²ΡƒΡ… рСзисторов Π½Π° 1 кОм ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ соСдинив ΠΈΡ…) ΠΏΠΎ Π»ΠΈΠ½ΠΈΠΈ RX модуля. ΠŸΠΎΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΊ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ это 5 Π’ Π»ΠΎΠ³ΠΈΠΊΠ° Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ 3.3. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ. Он ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½ΠΎΠ³ΠΈ RXD TXD модуля Π½Π΅ Ρ‚ΠΎΠ»Π΅Ρ€Π°Π½Ρ‚Π½Ρ‹Π΅ ΠΊ 5 Π’.

Ну ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² ESP8266 Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ USB-UART ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Π’ случаС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ, ΠΌΡ‹, ΠΏΠΎ сути, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ интСрфСйсов usb ΠΈ uart, минуя ΠΌΠΎΠ·Π³ΠΈ. Π’Π°ΠΊ Π·Π°Ρ‡Π΅ΠΌ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ лишний Ρ€Π°Π·, Ссли ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΈ Π±Π΅Π· Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅? Волько Π² этом случаС, ΠΌΡ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ RXD модуля ΠΊ TXD ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΎΡ€Π°, TXD β€” RXD.

Если Π²Π°ΠΌ Π»Π΅Π½ΠΈΠ²ΠΎ Π·Π°ΠΌΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ, возится с рСзисторами ΠΈ стабилизаторами β€” Π΅ΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ NodeMcu:

Π’ΡƒΡ‚ всё Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ‰Π΅, Π²ΠΎΡ‚ΠΊΠ½ΡƒΠ» кабСль Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, установил Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠΉ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉ Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΡƒ/ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° GPIO0 для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° модуля Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

Ну Π²ΠΎΡ‚, с Ρ‚Π΅ΠΎΡ€ΠΈΠ΅ΠΉ Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅ всё, ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ довольно Ρ‚Π°ΠΊΠΈ большая, ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, аля ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ модуля, я ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΡƒΡŽ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅.

Π―, Ρƒ сСбя Π½Π° ΡŽΡ‚ΡƒΠ± ΠΊΠ°Π½Π°Π»Π΅, ΠΎΡ‚ΠΊΡ€Ρ‹Π» Ρ†Π΅Π»Ρ‹ΠΉ плСйлист посвящённый ΠΌΠΎΠΈΠΌ Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ этого Wi-Fi модуля. Π’ ΠΏΠ»Π°Π½Π°Ρ… построили ΠΌΠ°ΡˆΠΈΠ½ΠΊΡƒ, ΠΈΠ»ΠΈ Π»ΠΎΠ΄ΠΊΡƒ, Π½Π° Wi-Fi ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ, Π³Π΄Π΅ вмСсто ΠΏΡƒΠ»ΡŒΡ‚Π° Π”Π£ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ смарт. Но ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ я ΠΊ этому Π΅Ρ‰Ρ‘ Π½Π΅ ΠΏΡ€ΠΈΡˆΡ‘Π», Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это всСго лишь ΠΏΠ»Π°Π½Ρ‹ Π½Π° Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ.

Π”Π°Ρ‚Π°ΡˆΠΈΡ‚Ρ‹ Π½Π°:
ASM1117 3.3 B;
ESP8266EX(ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Ρ‡Ρ‚ΠΎ стоит Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅);

Π•Ρ‰Ρ‘ ссылки:
РусскоязычноС сообщСство ΠΏΠΎ ESP8266;
Π‘Ρ…Π΅ΠΌΡ‹ рисовал Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Fritzing;
ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½Π΅ Π»ΡŽΠ±ΡΡ‚ Arduino;
ВсС ΠΌΠΎΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° geektimes.

By Π‘Π΅Ρ€Π³Π΅ΠΉ ПодСлкинЦ Π°ΠΊΠ° MrПодСлкинЦ.

Esp8266 — Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Arduino

Бписок ΠΈΠ· 244 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ esp8266.

AdagioPro УправляСт Poollights Adagio RGB Ρ‡Π΅Ρ€Π΅Π· RS-485
AlertMe ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΈ SMS Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ESP8266!
Алгодуино ΠŸΡ€ΠΎΡΡ‚Π°Ρ рСализация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° API Π½Π° C ++ для Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π±Π»ΠΎΠΊΠΎΠ² Algorand.
AllWize Arduino-совмСстимая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для взаимодСйствия с Ρ€Π°Π΄ΠΈΠΎ модулями RC1701HP-OSP / WIZE
ΠΠ»ΡŒΠΌΠ°Π²ΠΈΠΎΡΠ›ΠΈΡ‚Πœqtt ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ MQTT для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°ΠΌ
Aloes Device ΠšΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ MQTT для Алоэ
Antares ESP8266 HTTP Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для упрощСния процСсса получСния / развСртывания Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Antares IoT
Antares ESP8266 MQTT Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для упрощСния процСсса подписки ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Antares IoT Ρ‡Π΅Ρ€Π΅Π· MQTT Π½Π° ESP8266
AntaresLoraID Π›ΠΎΡ€Π°.id Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для Dragino / RFM ΠΈ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ LoRaWAN.
anto-esp8266-arduino ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ESP8266 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Anto.io IoT.
ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Fernando K Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Fernando K
АрдуиноIHC Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π²Π²ΠΎΠ΄Ρƒ / Π²Ρ‹Π²ΠΎΠ΄Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° IHC.
ArduinoIoTCloud Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ сСрвису Arduino IoT Cloud.
ArduinoUniqueID Arduino Library для получСния заводского сСрийного Π½ΠΎΠΌΠ΅Ρ€Π° ΠΎΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Atmel AVR, SAM, SAMD, STM32 ΠΈ ESP.
АрдуиноVNC ΠšΠ»ΠΈΠ΅Π½Ρ‚ VNC для Arduino
Arduino_ConnectionHandler Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для управлСния сСтСвым ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ (WiFi, GSM, NB, [Ethernet])
ArtnetWifi ArtNet с ESP8266, ESP32 ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ.
astra_esp8266 ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ доступ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Cassandra с ESP8266.
AstroMech ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» для ΠΎΠ±ΠΌΠ΅Π½Π° нСбольшими объСмами Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· Π°ΡƒΠ΄ΠΈΠΎ.
AsyncElegantOTA Асинхронно Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ OTA для ESP8266 ΠΈ ESP32.
AsyncTelegram ΠŸΡ€ΠΎΡΡ‚Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino Telegram BOT для ESP8266 ΠΈ ESP32
AutoConnect ESP8266 / ESP32 ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ WLAN Π²ΠΎ врСмя выполнСния с Π²Π΅Π±-интСрфСйсом.
AzureIoTHub Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Azure IoT для Arduino. Для Arduino MKR1000 ΠΈΠ»ΠΈ Zero ΠΈ WiFi Shield 101, Adafruit Huzzah ΠΈ Feather M0 ΠΈΠ»ΠΈ SparkFun Thing.
AzureIoTHubMQTTClient ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π¦Π΅Π½Ρ‚Ρ€Π° Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ Azure для ESP8266 ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ MQTT.
AzureIoTProtocol_HTTP Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP Azure для Arduino. Для Arduino MKR1000 ΠΈΠ»ΠΈ Zero ΠΈ WiFi Shield 101, Adafruit Huzzah ΠΈ Feather M0 ΠΈΠ»ΠΈ SparkFun Thing.
AzureIoTProtocol_MQTT Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Azure MQTT для Arduino. Для Arduino MKR1000 ΠΈΠ»ΠΈ Zero ΠΈ WiFi Shield 101, Adafruit Huzzah ΠΈ Feather M0 ΠΈΠ»ΠΈ SparkFun Thing.
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° AzureIoT ΠžΠ±Ρ‰Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° слуТСбных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Azure C для Arduino. Для Arduino MKR1000 ΠΈΠ»ΠΈ Zero ΠΈ WiFi Shield 101, Adafruit Huzzah ΠΈ Feather M0 ΠΈΠ»ΠΈ SparkFun Thing.
Π‘ΠΈΠ»Π°Π½ LoRaWAN LoRaWAN Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ LoRaWAN класса A ΠΈ C с простым API.
Bh2750 Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² освСщСнности, содСрТащая Bh2750FVI IC
Bleeper Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для хранСния ΠΎΠ±Ρ‰ΠΈΡ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.
BlueDisplay Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт смартфону ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Ρƒ Android Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² качСствС графичСского дисплСя для Arduino.
BlynkGSM_Manager Simple GSM shield Credentials Manager для ΠΏΠ»Π°Ρ‚ Blynk ΠΈ ESP32 / ESP8266 с SSL ΠΈΠ»ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ, Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² LittleFS / SPIFFS / EEPROM.
Blynk_Async_GSM_Manager Simple GSM shield Credentials Manager для ΠΏΠ»Π°Ρ‚ Blynk ΠΈ ESP32 / ESP8266 с SSL ΠΈΠ»ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ, Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² LittleFS / SPIFFS / EEPROM.
Blynk_Async_WM Simple WiFiManager для Blynk ΠΈ ESP8266 / ESP32 с SSL ΠΈΠ»ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ, Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² LittleFS, SPIFFS ΠΈΠ»ΠΈ EEPROM
Blynk_WiFiManager Simple WiFiManager для Blynk ΠΈ ESP8266 / ESP32 с SSL ΠΈΠ»ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ, Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² LittleFS, SPIFFS ΠΈΠ»ΠΈ EEPROM
BoodskapTransceiver Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ Boodskap
Π‘Ρ€Π·ΠΎ I2C Brzo I2C — это быстрая рСализация I2C, написанная Π½Π° ассСмблСрС для esp8266
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния BSEC Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Bosch Sensortec Environmental Cluster (BSEC)
Byteduino ΠžΠ±Π»Π΅Π³Ρ‡Π΅Π½Π½Π°Ρ рСализация ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Ρ‹ Obyte (Ρ€Π°Π½Π΅Π΅ Byteball) для ESP8266 ΠΈ ESP32
CaptureTimer Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π°Ρ…Π²Π°Ρ‚Π° Arduino
Ch476msc Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для микросхСмы управлСния Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ Ch476.
cloud4rpi-esp-arduino ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠ»Π°Ρ‚Ρƒ ΠΊ ΠΏΠ°Π½Π΅Π»ΠΈ управлСния Cloud4RPi с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ MQTT — https://cloud4rpi.io.
.Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

— ESP8266 Arduino Core 2.7.2-90-g8258db53 докумСнтация

WiFi (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ESP8266WiFi)

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

ESP8266WiFi Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π½Π° основС ESP8266 SDK с использованиСм соглашСния ΠΎΠ± ΠΈΠΌΠ΅Π½Π°Ρ… ΠΈ ΠΎΠ±Ρ‰Π΅ΠΉ философии Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Arduino WiFi Shield. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΠΈΠ»ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Wi-Fi, пСрСнСсСнных ΠΈΠ· ESP8266 SDK Π² эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, пСрСросло API-интСрфСйсы Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ WiFi Shield, ΠΈ стало ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ.

ESP8266ДокумСнтация ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Wi-Fi

Π’ΠΈΠΊΠ΅Ρ€

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΎΠΌ.Π’ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°.

Π’ настоящСС врСмя Π½Π΅ рСкомСндуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° (сСтСвых, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ…, Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ…) ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° Ρ‚ΠΈΠΊΠ΅Ρ€Π°. ВмСсто этого установитС Ρ„Π»Π°Π³ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° Ρ‚ΠΈΠΊΠ΅Ρ€Π° ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ этого Ρ„Π»Π°Π³Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π°.

Π’ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для упрощСния использования Ticker ΠΈ прСдотвращСния сброса WDT: TickerScheduler

EEPROM

Π­Ρ‚ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ отличаСтся ΠΎΡ‚ стандартного класса EEPROM. Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ EEPROM.begin (size) , ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π²Ρ‹ Π½Π°Ρ‡Π½Π΅Ρ‚Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ, Ρ€Π°Π·ΠΌΠ΅Ρ€ — это количСство Π±Π°ΠΉΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.Π Π°Π·ΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ 4 Π΄ΠΎ 4096 Π±Π°ΠΉΡ‚.

EEPROM.write Π½Π΅ выполняСт запись Π²ΠΎ Ρ„Π»ΡΡˆ-ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, вмСсто этого Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ EEPROM.commit () всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния Π²ΠΎ Ρ„Π»ΡΡˆ-памяти. EEPROM.end () Ρ‚Π°ΠΊΠΆΠ΅ зафиксируСт ΠΈ освободит копию содСрТимого EEPROM Π² ΠžΠ—Π£.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

EEPROM ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ΄ΠΈΠ½ сСктор Ρ„Π»ΡΡˆ-памяти, располоТСнный сразу послС встроСнной Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы.

Π’ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ сСктор Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π½ΠΎΠ²ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ EEPROM, поэтому Ρ„Π»Π΅Ρˆ-ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ быстро ΠΈΠ·Π½Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ, Π΄Π°ΠΆΠ΅ Ссли Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ нСбольшиС ΠΎΠ±ΡŠΠ΅ΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Ρ….РассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ EEPROM, упомянутых Π½ΠΈΠΆΠ΅.

I2C (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ²)

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

Wire Π² настоящСС врСмя ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π³Π»Π°Π²Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π΄ΠΎ 450 ΠΊΠ“Ρ†. ΠŸΠ΅Ρ€Π΅Π΄ использованиСм I2C ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ для SDA ΠΈ SCL Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ установлСны ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Wire.begin (int sda, int scl) , Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Wire.begin (0, 2) Π½Π° ESP-01, ΠΈΠ½Π°Ρ‡Π΅ ΠΎΠ½ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ 4 (SDA) ΠΈ 5 ​​(SCL).

SPI

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

SPI ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ вСсь API-интСрфСйс Arduino SPI, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ этап настройки (CPHA).Установка полярности часов (CPOL) ΠΏΠΎΠΊΠ° Π½Π΅ поддСрТиваСтся (SPI_MODE2 ΠΈ SPI_MODE3 Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚).

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ SPI:

  • MOSI = GPIO13
  • MISO = GPIO12
  • SCLK = GPIO14

БущСствуСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π½Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ SPI0. Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ SPI.pins (6, 7, 8, 0) ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ SPI.begin () . Π‘ΡƒΠ»Π°Π²ΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°:

  • MOSI = SD1
  • MISO = SD0
  • SCLK = CLK
  • HWCS = GPIO0

Π’ этом Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ SPI ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ совмСстно с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ считываСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈΠ· Ρ„Π»ΡΡˆ-памяти ΠΈ управляСтся Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ Π°Ρ€Π±ΠΈΡ‚Ρ€ΠΎΠΌ (Ρ„Π»ΡΡˆ-ΠΏΠ°ΠΌΡΡ‚ΡŒ всСгда ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ высокий ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚).Для этого Ρ€Π΅ΠΆΠΈΠΌΠ° CS Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π»ΠΈΠ½ΠΈΠ΅ΠΉ CS с GPIO, Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π·Π½Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Π°Ρ€Π±ΠΈΡ‚Ρ€ собираСтся ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΠΌ доступ ΠΊ шинС, поэтому Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Π΅ΠΌΡƒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ CS автоматичСски.

SoftwareSerial

ΠŸΠΎΡ€Ρ‚ ESP8266 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ SoftwareSerial, созданный ΠŸΠΈΡ‚Π΅Ρ€ΠΎΠΌ Π›Π΅Ρ€ΡƒΠΏΠΎΠΌ (@plerup), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ 115200 Π±ΠΎΠ΄ ΠΈ нСсколько экзСмпляров SoftwareSerial. Π‘ΠΌ. Https://github.com/plerup/espsoftwareserial, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, ΡΠ²ΡΠ·Π°Π½Π½ΡƒΡŽ с SoftwareSerial.

API для ESP

НСкоторыС спСцифичныС для ESP API, относящиСся ΠΊ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΌΡƒ сну, RTC ΠΈ Ρ„Π»ΡΡˆ-памяти, доступны Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ ESP .

ESP.deepSleep (микросСкунды, Ρ€Π΅ΠΆΠΈΠΌ) ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Ρ‚ Ρ‡ΠΈΠΏ Π² Ρ€Π΅ΠΆΠΈΠΌ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна. Π Π΅ΠΆΠΈΠΌ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· WAKE_RF_DEFAULT , WAKE_RFCAL , WAKE_NO_RFCAL , WAKE_RF_DISABLED . (GPIO16 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ привязан ΠΊ RST для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна.) Π§ΠΈΠΏ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² спящСм Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ ESP.deepSleepMax () микросСкунд. Если Π²Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚Π΅ Ρ€Π΅ΠΆΠΈΠΌ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна с WAKE_RF_DISABLED ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ WiFi ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ±ΡƒΠΆΠ΄Π΅Π½ΠΈΠΈ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ WAKE_RF_DEFAULT , ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ функция WiFi станСт доступной.

ESP.deepSleepInstant (микросСкунды, Ρ€Π΅ΠΆΠΈΠΌ) Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ESP.deepSleep , Π½ΠΎ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ засыпаСт, Π½Π΅ доТидаясь ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ WiFi.

ESP.rtcUserMemoryWrite (смСщСниС, & Π΄Π°Π½Π½Ρ‹Π΅, Ρ€Π°Π·ΠΌΠ΅Ρ€ (Π΄Π°Π½Π½Ρ‹Π΅)) ΠΈ ESP.rtcUserMemoryRead (offset, & data, sizeof (data)) позволяСт ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ памяти RTC Ρ‡ΠΈΠΏΠ° ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ ΠΈΡ… ΠΈΠ· Π½Π΅Π΅ соотвСтствСнно. Π‘ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ измСряСтся Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΏΠΎ 4 Π±Π°ΠΉΡ‚Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 0 Π΄ΠΎ 127 Π±Π»ΠΎΠΊΠΎΠ² (ΠΎΠ±Ρ‰ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ памяти RTC составляСт 512 Π±Π°ΠΉΡ‚ΠΎΠ²). Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Ρ‹ ΠΏΠΎ 4 Π±Π°ΠΉΡ‚Π°. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ†ΠΈΠΊΠ»Π°ΠΌΠΈ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ сна, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ потСряны послС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‡ΠΈΠΏΠ°. Π”Π°Π½Π½Ρ‹Π΅, хранящиСся Π² ΠΏΠ΅Ρ€Π²Ρ‹Ρ… 32 Π±Π»ΠΎΠΊΠ°Ρ…, Π±ΡƒΠ΄ΡƒΡ‚ потСряны послС выполнСния обновлСния OTA, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ядра.

ESP.restart () пСрСзапускаСт ЦП.

ESP.getResetReason () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ послСднюю ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ сброса Π² ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

ESP.getFreeHeap () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ свободной ΠΊΡƒΡ‡ΠΈ.

ESP.getHeapFragmentation () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ (0% — чистый, Π±ΠΎΠ»Π΅Π΅ ~ 50% — нСбСзопасный)

ESP.getMaxFreeBlockSize () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ самый большой Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹ΠΉ свободный Π±Π»ΠΎΠΊ ΠžΠ—Π£ Π² ΠΊΡƒΡ‡Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊΡƒΡ‡ΠΈ. ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π•: ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ malloc () Π±ΡƒΠ΄Π΅Ρ‚ мСньшС ΠΈΠ·-Π·Π° Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов диспСтчСра памяти.

ESP.getChipId () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‡ΠΈΠΏΠ° ESP8266 ΠΊΠ°ΠΊ 32-Π±ΠΈΡ‚Π½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число.

ESP.getCoreVersion () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ядра.

ESP.getSdkVersion () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Π΅Ρ€ΡΠΈΡŽ SDK Π² Π²ΠΈΠ΄Π΅ символа.

ESP.getCpuFreqMHz () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ частоту процСссора Π² ΠœΠ“Ρ† Π² Π²ΠΈΠ΄Π΅ 8-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Ρ†Π΅Π»ΠΎΠ³ΠΎ числа Π±Π΅Π· Π·Π½Π°ΠΊΠ°.

ESP.getSketchSize () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ скСтча ΠΊΠ°ΠΊ 32-Π±ΠΈΡ‚Π½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число Π±Π΅Π· Π·Π½Π°ΠΊΠ°.

ESP.getFreeSketchSpace () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ свободноС пространство эскиза ΠΊΠ°ΠΊ 32-разрядноС Ρ†Π΅Π»ΠΎΠ΅ число Π±Π΅Π· Π·Π½Π°ΠΊΠ°.

ESP.getSketchMD5 () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ MD5 Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ эскиза.

ESP.getFlashChipId () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ„Π»ΡΡˆ-Ρ‡ΠΈΠΏΠ° ΠΊΠ°ΠΊ 32

.Установка

— ESP8266 Arduino Core 2.7.2-90-g8258db53 докумСнтация

Π­Ρ‚ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ установки для участников ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ — Windows 10

  • Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅Ρ‰Π΅ Π½Π΅ установлСна ​​вСрсия ядра ESP8266. с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Board Manager (см. Π²Ρ‹ΡˆΠ΅). Если Π΄Π°, ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΈΠ· Π‘ΠΎΠ²Π΅Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π’Π°ΠΊΠΆΠ΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΡ‚Π΅Ρ€Π΅Ρ‚ΡŒ Arduino15 содСрТаниС.

  • УстановитС git для Windows (Ссли Π΅Ρ‰Π΅ Π½Π΅; см. Https: // git-scm.ru / download / win)

  • ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку (cmd) ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Arduino ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это Sketchbook ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ C: \ users \ {username} \ Documents \ Arduino , Π³Π΄Π΅ пСрСмСнная срСды % USERPROFILE% ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ содСрТит C: \ users \ {username} )

  • ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ этот Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ оборудования / esp8266com / esp8266.

     cd% ΠŸΠ ΠžΠ€Π˜Π›Π¬ ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠ’Π•Π›Π―% \ Documents \ Arduino \
    Ссли Π½Π΅ сущСствуСт оборудования mkdir hardware
    cd ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅
    Ссли Π½Π΅ сущСствуСт esp8266com mkdir esp8266com
    cd esp8266com
    git clone https: // github.com / esp8266 / Arduino.git esp8266
     

    Π£ вас Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ структура ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π²

    C: \ Users \ {вашС имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ} \ Documents \

     Ардуино
    |
    --- Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ
    --- ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅
        |
        --- esp8266com
            |
            --- esp8266
                |
                --- Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ
                --- ядра
                --- Π΄ΠΎΠΊ
                --- Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ
                --- ΠΏΠ°ΠΊΠ΅Ρ‚
                --- тСсты
                --- инструмСнты
                --- Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹
                --- ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°.тСкст
                --- programmers.txt
                --- README.md
                --- доски.txt
                --- Π›Π˜Π¦Π•ΠΠ—Π˜Π―
     
  • Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡƒΠ»ΠΈ

     cd% ΠŸΠ ΠžΠ€Π˜Π›Π¬ ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠ’Π•Π›Π―% \ Documents \ Arduino \ hardware \ esp8266com \ esp8266
    git ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ подмодуля --init
     

Если Π² процСссС сборки ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ сообщСния ΠΎΠ± ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ„Π°ΠΉΠ»Π°Ρ…, связанных с SoftwareSerial , это Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ этот шаг Π±Ρ‹Π» ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½ ΠΈ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

  • Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ инструмСнты

     cd esp8266 / инструмСнты
    python3 ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ.Ρ€Ρƒ
     
  • ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Arduino

  • ΠŸΡ€ΠΈ использовании Arduino IDE для Visual Studio (https://www.visualmicro.com/) ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ — Visual Micro — ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ сканированиС Ρ†Π΅ΠΏΠΎΡ‡Π΅ΠΊ инструмСнтов ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

  • ΠŸΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ локальной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ esp8266 ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git pull

     cd% ΠŸΠ ΠžΠ€Π˜Π›Π¬ ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠ’Π•Π›Π―% \ Documents \ Arduino \ hardware \ esp8266com \ esp8266
    git статус
    git pull
     

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ тСорСтичСски Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² C: \ Program Files (x86) \ Arduino \ hardware , ΠΎΠ΄Π½Π°ΠΊΠΎ это ΠΈΠΌΠ΅Π΅Ρ‚ послСдствия для бСзопасности, Π½Π΅ говоря ΡƒΠΆΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ часто удаляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ установкС Arduino IDE.Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ прСимущСство (ΠΈΠ»ΠΈ нСдостаток, Π² зависимости ΠΎΡ‚ вашСй Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния) — ΠΎΠ½ доступСн для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ вашСго ПК, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Arduino.

.Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ

— ESP8266 Arduino Core 2.7.2-90-g8258db53 докумСнтация

ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡ

На ESP8266 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСрывания

, Π½ΠΎ ΠΈΡ… слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ. ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ нСсколько ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ:

  • Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° прСрывания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² IRAM, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ„Π»ΡΡˆ-ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ посрСди Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ происходят. Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ это, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ICACHE_RAM_ATTR Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Если это Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ отсутствуСт, эскиз Π²Ρ‹ΠΉΠ΄Π΅Ρ‚ ΠΈΠ· строя ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ attachInterrupt с сообщСниСм ΠΎΠ± ошибкС.
 ICACHE_RAM_ATTR void gpio_change_handler (void * data) {...
 
  • ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ delay () ΠΈΠ»ΠΈ yield () ΠΈΠ»ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ delay () ΠΈΠ»ΠΈ yield () .
  • Π”Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ΡΡ (> 1 мс) Π·Π°Π΄Π°Ρ‡ΠΈ Π² прСрываниях Π²Ρ‹Π·ΠΎΠ²ΡƒΡ‚ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ сбои. WiFi ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ части ядра ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ. Если Ρƒ тСбя ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Π», Ρ‚Ρ‹ моТСшь ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Ρ‡ΠΈΠ²Ρ‹ΠΉ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π»Π°Π³, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ваш основной Ρ†ΠΈΠΊΠ» () ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ (которая Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π²Π½Π΅ прСрывания контСкст, ΠΊΠΎΠ³Π΄Π° это бСзопасно) для Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹.
  • ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ опасными, ΠΈ ΠΈΡ… слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Π² прСрываниях. ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΡ ΠΊ new ΠΈΠ»ΠΈ malloc Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ссли ΠΏΠ°ΠΌΡΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π°. Π—Π²ΠΎΠ½ΠΊΠΈ Π½Π° realloc ΠΈ бСсплатно ΠΠ˜ΠšΠžΠ“Π”Π Π½Π΅ Π·Π²ΠΎΠ½ΠΈΡ‚Π΅. ИспользованиС Π»ΡŽΠ±Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ free ΠΈΠ»ΠΈ realloc сами ΠΏΠΎ сСбС Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹ ΠΏΠΎ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ String , std :: string , std :: vector ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ классы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ с крайняя ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ (слСдитС Π·Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ строки Π½Π΅ мСнялись, Π²Π΅ΠΊΡ‚ΠΎΡ€Π½Ρ‹Π΅ элСмСнты Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΈ Ρ‚. Π΄.).

Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄

НомСра ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²

Π² Arduino Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌ ESP8266 GPIO числа. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ pinMode , digitalRead ΠΈ digitalWrite Ρ€Π°Π±ΠΎΡ‚Π°ΠΉΡ‚Π΅ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, поэтому для чтСния GPIO2 Π·Π²ΠΎΠ½ΠΈΡ‚Π΅ ΠΏΠΎ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρƒ digitalRead (2) .

Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ 0–15 ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ INPUT , OUTPUT ΠΈΠ»ΠΈ INPUT_PULLUP . Π¨Ρ‚Ρ‹Ρ€ΡŒ 16 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ INPUT , OUTPUT ΠΈΠ»ΠΈ INPUT_PULLDOWN_16 . ΠŸΡ€ΠΈ запускС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ настроСны ΠΊΠ°ΠΊ INPUT .

ΠŸΠΈΠ½Ρ‹

ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Serial, I2C, SPI. Π­Ρ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ. Π’ На схСмС Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ располоТСниС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² популярного модуля ESP-12.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²

Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ 6-11 Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π° этой схСмС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ микросхСму Ρ„Π»ΡΡˆ-памяти ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. ΠŸΡ‹Ρ‚Π°ΡŽΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти Π±ΡƒΠ»Π°Π²ΠΊΠΈ ΠΊΠ°ΠΊ ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°, скорСС всСго, Π²Ρ‹Π·ΠΎΠ²ΡƒΡ‚ сбой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ (ESP-12ED, NodeMCU 1.0) also break out ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ 9 ΠΈ 11. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄, Ссли микросхСма Ρ„Π»ΡΡˆ-памяти Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ DIO. (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ QIO, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ).

ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· attachInterrupt , detachInterrupt functions. ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ привязаны ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ GPIO ΠΏΠΈΠ½, ΠΊΡ€ΠΎΠΌΠ΅ GPIO16. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ стандартныС Ρ‚ΠΈΠΏΡ‹ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ Arduino: Π˜Π—ΠœΠ•ΠΠ•ΠΠ˜Π• , ΠŸΠžΠ”ΠͺΠ•Πœ , ΠŸΠΠ”Π•ΠΠ˜Π• . ISR Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ICACHE_RAM_ATTR ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Аналоговый Π²Ρ…ΠΎΠ΄

ESP8266 ΠΈΠΌΠ΅Π΅Ρ‚ СдинствСнный ΠΊΠ°Π½Π°Π» АЦП, доступный ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано Π»ΠΈΠ±ΠΎ для чтСния напряТСния Π½Π° Π²Ρ‹Π²ΠΎΠ΄Π΅ АЦП, Π»ΠΈΠ±ΠΎ для чтСния напряТСния питания модуля (VCC).

Для считывания внСшнСго напряТСния, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ АЦП, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ analogRead (A0) . Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ напряТСния Π³ΠΎΠ»ΠΎΠ³ΠΎ ESP8266 составляСт 0–1,0 Π’, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ напряТСния. На всякий случай <1,0 Π’ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Если, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 0,5 Π’ обСспСчиваСт значСния ΠΎΠΊΠΎΠ»ΠΎ ~ 512, Π·Π°Ρ‚Π΅ΠΌ максимум напряТСниС скорСС всСго Π±ΡƒΠ΄Π΅Ρ‚ 1.0 Π’ ΠΈ 3,3 Π’ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ ESP8266. Однако значСния ΠΎΠΊΠΎΠ»ΠΎ ~ 150 ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ максимальноС напряТСниС скорСС всСго Π±ΡƒΠ΄Π΅Ρ‚ 3,3 Π’.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ напряТСниС VCC, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ESP.getVcc () ΠΈ Π²Ρ‹Π²ΠΎΠ΄ ADC Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ сохранСн Π½Π΅ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку Π² эскиз:

Π­Ρ‚Π° строка Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π²Π½Π΅ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ справа послС # Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π»ΠΈΠ½ΠΈΠΉ вашСго эскиза.

Аналоговый Π²Ρ‹Ρ…ΠΎΠ΄

analogWrite (Π²Ρ‹Π²ΠΎΠ΄, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ ШИМ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄Π΅.ШИМ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°Ρ… с 0 ΠΏΠΎ 16. Π’Ρ‹Π·ΠΎΠ² analogWrite (ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, 0) , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ШИМ. Π½Π° Π±ΡƒΠ»Π°Π²ΠΊΠ΅.

Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 0 Π΄ΠΎ 255 (это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для Arduino). Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ШИМ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Π²Ρ‹Π·Π²Π°Π² analogWriteRange (new_range) ΠΈΠ»ΠΈ analogWriteResolution (Π±ΠΈΡ‚Ρ‹) . new_range ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ 15… 65535 ΠΈΠ»ΠΈ Π±ΠΈΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ 4 Π΄ΠΎ 16.

ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π•: Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ analogWrite Π±Ρ‹Π» 1023 Π² выпусках Ρ€Π°Π½Π΅Π΅ 3.0, Π½ΠΎ это ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ нСсовмСстимости с внСшними Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ зависит ΠΎΡ‚ ядра Arduino ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 256. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1023 ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ² analogWriteRange (1023) ΠΊ ΠΈΡ… ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ setup () , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ своСму ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ повСдСнию. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π»ΠΈ analogWriteRange , Π½Π΅ Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.

Частота ШИМ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 1 ΠΊΠ“Ρ†. Π’Ρ‹Π·ΠΎΠ² analogWriteFreq (new_frequency) для измСнСния частоты.ДопустимыС значСния ΠΎΡ‚ 100 Π“Ρ† Π΄ΠΎ 40000 Π“Ρ†.

ESP Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ШИМ, поэтому рСализация осущСствляСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ. Π‘ ΠΎΠ΄Π½ΠΈΠΌ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ PWM Π½Π° 40 ΠΊΠ“Ρ† процСссор ΡƒΠΆΠ΅ довольно Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½. Π§Π΅ΠΌ большС Π’Ρ‹Ρ…ΠΎΠ΄Ρ‹ ШИМ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, ΠΈ Ρ‡Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ ΠΈΡ… частота, Ρ‚Π΅ΠΌ Π±Π»ΠΈΠΆΠ΅ Π²Ρ‹ ΠΊ ограничСния ЦП, ΠΈ мСньшСС количСство Ρ†ΠΈΠΊΠ»ΠΎΠ² ЦП доступно для выполнСния эскиза.

Π‘Ρ€ΠΎΠΊΠΈ ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ

миллис () ΠΈ микросСкунд () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ количСство миллисСкунд ΠΈ послС сброса ΠΏΡ€ΠΎΡˆΠ»ΠΎ соотвСтствСнно микросСкунды.

Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° (мс) приостанавливаСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скСтча Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя

.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *