getting started with esp8266 @HackIoT#2
-
Upload
sergei-silnov -
Category
Technology
-
view
2.452 -
download
8
Transcript of getting started with esp8266 @HackIoT#2
![Page 1: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/1.jpg)
Начинаем работать с ESP8266
Иван Грохотков HackIoT #2, 24 декабря 2014
![Page 2: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/2.jpg)
ESP8266
4Mbit Flash25МГц кварц
Антенна
2x GPIO UART
VCC, GND RST, CH_PD
$3.00
![Page 3: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/3.jpg)
• Tensilica Xtensa lx-106 RISC CPU
• 32k IRAM96k RAM (~40k доступно)64k OTP(?) ROM
• 16 GPIO, 1.5x UART, 2x SPI, 1 канал 10-бит АЦП
• 802.11 b/g/n PHY + MACLwIP TCP/IP стэк
• Выполнение приложений из SPI FLASH
![Page 4: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/4.jpg)
ESP-01
![Page 5: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/5.jpg)
ESP-01
1. VCC=3.0 – 3.6В ICC < 200мА
2. RESET, CH_PD – 10кОм к VCC
3. GPIO0 – к GND для загрузки ПО, к VCC для работы
![Page 6: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/6.jpg)
FTDI + ESP-01
![Page 7: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/7.jpg)
FTDI + ESP-01
1. TX, RX ESP — к RX, TX FTDI
2. Отдельный источник питания для ESP
![Page 8: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/8.jpg)
Загрузка программы
![Page 9: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/9.jpg)
Загрузка программы
1. GPIO0 — к GND
2. Перезагрузить, заземлив CH_PD или RESET
![Page 10: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/10.jpg)
Tools
A. crosstool-NGhttps://github.com/esp8266/esp8266-wiki/wiki/Toolchain
B. Ubuntu Virtualbox image (Espressif) http://bbs.espressif.com/viewtopic.php?f=5&t=2
![Page 11: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/11.jpg)
SDK
• ESP8266 SDK v0.9.4 http://bbs.espressif.com/viewtopic.php?f=5&t=90
• FreeRTOS porthttps://github.com/espressif/esp_iot_rtos_sdk
![Page 12: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/12.jpg)
https://github.com/themadinventor/esptool
./esptool.py -—port=/dev/tty.usbserial \ write_flash 0x00000 firmware.bin
![Page 13: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/13.jpg)
ArduinoESP
https://github.com/igrr/Arduino
git checkout -b ide-1.5.x-esp8266
![Page 14: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/14.jpg)
Blink
![Page 15: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/15.jpg)
Arduino IDE
AVR platform
SAM platform ESP8266 platform
BoardsLibraries
Toolchain
Uploadtools
SDK
CoreCore
![Page 16: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/16.jpg)
void loop() { while(true){ delay(1000);
} }
![Page 17: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/17.jpg)
Scheduler
WiFi task
TCP/IP task
Timer
TCP/IP task
User task
User callback
User callback
User callback
TCP/IP task
![Page 18: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/18.jpg)
Scheduler
WiFi task
TCP/IP task
Timer
TCP/IP task
User task
User callback
User callback
User callback
TCP/IP task
void loop() { while(true){
delay(1000); }
}
x
![Page 19: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/19.jpg)
Restore stack & registers
Scheduler
WiFi task
TCP/IP task
Timer
User taskSave stack & registers & PC
Set timer Jump!
delay(1000)
<- schedule user task
User taskreturn from delay
![Page 20: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/20.jpg)
Работает• Большинство встроенных функций:pinMode, digitalRead, digitalWrite, analogRead(0), attachInterrupt, detachInterrupt, shiftIn, shiftOut, millis, micros, delay, delayMicroseconds, yield
• Библиотеки: Serial, Ticker, EEPROM, Wire (I2C), WiFi
• Многие сторонние библиотеки: Zt I2C OLED, DHT11, ArduinoJson, Stepper, etc…
• Встроенные функцииanalogWrite, pulseIn
• SPI, UDP, I2C slave
Еще нет
![Page 21: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/21.jpg)
betaMac OS X 10.7+
http://goo.gl/xS94fi
(http://download.igrr.me/arduino-1.5.9-macosx-signed.zip)
Source:
https://github.com/igrr/Arduino
![Page 22: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/22.jpg)
Demo
![Page 23: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/23.jpg)
ESP8266 + DHT11+ HTTP
![Page 25: getting started with esp8266 @HackIoT#2](https://reader030.fdocuments.in/reader030/viewer/2022020110/55a9f4861a28ab521c8b4635/html5/thumbnails/25.jpg)
Спасибо!