ESP8266 是一款由上海乐鑫信息科技开发的可以作为微控制器使用的成本极低且具有完整 TCP/IP 协议栈的 Wi-Fi IoT 控制芯片。
简单来说就是这块芯片能连 WiFi 、能编程控制 GPIO。
ESP8266 开发板
但是单独对一块芯片进行开发调试会比较麻烦,需要连接串口、电源等等。 市面上有许多 ESP8266 的开发版,使用开发版只需要通过 USB 接口连接开发版,就可以方便的进行开发、烧录、调试。
NodeMcu
NodeMCU 是一个开源的物联网平台。 它使用Lua脚本语言编程。NodeMCU 包含了可以运行在 esp8266 Wi-Fi SoC 芯片之上的固件,以及基于 ESP-12 模块的硬件。
简单来说 NodeMcu 基于是 ESP8266 硬件(开发板),并提供一套固件可以使用 Lua 脚本进行开发。
虽然使用的是 NodeMcu 开发板,但使用的是 MicroPython 进行开发。
MicroPython
MicroPython,是Python 3编程语言的一个完整软件实现,用C语言编写,被优化于运行在微控制器之上。
和 NodeMcu 一样,MicroPython 是跑在 ESP8266 上的一个“操作系统”,可以通过 python 语言对硬件进行开发。
Hello MicroPython
由于 ESP8266 本身并没有安装 “MicroPython 操作系统”,首先得进行固件的烧录(安装操作系统)。
详细的步骤参考 MicroPython 的 文档
简单总结一下步骤:
- 安装串口驱动
- 安装烧录工具
pip install esptool
- 下载 ESP8266 固件
- 抹掉自带固件
esptool.py --port /dev/ttyUSB0 erase_flash
(/dev/ttyUSB0 为串口硬件) - 烧录固件
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 固件目录
- 通过串口进入 REPL 环境