Skip to content

edgexie/esp-12f

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP8266

ESP8266 固件开发与 Web 控制项目。

项目结构

esp-12f/
├── firmware/
│   ├── c/                    # C/C++ 固件 (PlatformIO)
│   │   ├── src/main.cpp
│   │   └── platformio.ini
│   └── python/               # MicroPython 固件
│       ├── boot.py
│       ├── main.py
│       ├── mqtt_client.py
│       └── umqtt_cp.py
├── web/
│   ├── be/                   # NestJS 后端
│   │   ├── src/
│   │   ├── package.json
│   │   └── tsconfig.json
│   ├── fe/                   # 前端页面
│   │   └── index.html
│   ├── index.html
│   └── package.json
├── docs/
│   ├── curriculum/           # 10 课渐进式课程
│   ├── gpio-led.md
│   ├── mqtt-broker.md
│   └── repl.md
└── README.md

当前硬件事实

本项目当前按手上这块实物板子作为课程和接线基准:

项目 实物信息
核心平台 ESP8266
模块型号 ESP-12F
开发板形态 NodeMCU 风格开发板
板子丝印 Ver 0.1
正面方向 天线朝上,Micro USB 朝下,元件正面朝自己
供电/下载 Micro USB
板载按钮 RST 用于重启板子,FLASH 用于配合进入烧录/下载模式
右侧排针 D0D1D2D3D43VGD5D6D7D8RXTXG3V
左侧排针 A0GVUS3S2S1SCS0SKG3VENRSTGVIN

后续课程、接线说明和引脚图都优先以这块实物板子的丝印为准。S0/S1/S2/S3/SC/SK 多数与板载 Flash 相关,普通实验先不使用。

ESP8266 NodeMCU 引脚图

引脚图按手上这块 NodeMCU Ver 0.1 实物丝印绘制:天线朝上、Micro USB 朝下、元件正面朝自己。右侧是 D0D8RXTX,左侧是 A0、电源/复位以及 S0/S1/S2/S3/SC/SK 这组 Flash 相关引脚。

技术栈

技术
固件 (C) PlatformIO, Arduino framework, ESP8266 RTOS SDK
固件 (Python) MicroPython, umqtt
后端 NestJS, TypeScript, MQTT.js
前端 HTML, CSS, JavaScript, SSE
通信 MQTT, HTTP, SSE

目录说明

  • firmware/c/ — PlatformIO 工程,C/C++ 固件代码,烧录到 ESP8266
  • firmware/python/ — MicroPython 脚本,通过 ampy 烧录或直接运行
  • web/be/ — NestJS 后端服务,提供 HTTP API 与 MQTT 桥接
  • web/fe/ — 前端控制页面,通过 SSE 接收实时状态
  • docs/ — 文档与渐进式课程(10 课从零到综合项目)

快速开始

本地敏感配置

真实 Wi-Fi、MQTT 地址、用户名和密码不要写进 Git。仓库只保留示例文件:

# ESP8266 MicroPython 配置
cp firmware/python/config.example.py firmware/python/config.py

# NestJS 后端 MQTT 配置
cp web/be/.env.example web/be/.env

然后只编辑本地的 firmware/python/config.pyweb/be/.env。这两个文件已被 .gitignore 忽略。

固件 (Python)

ampy --port /dev/cu.usbserial-1130 --baud 115200 put firmware/python/config.py /config.py
ampy --port /dev/cu.usbserial-1130 --baud 115200 put firmware/python/mqtt_client.py /main.py

固件 (C)

如果目标是运行自己写的 C/C++ 程序,不需要先烧 AT 固件。C/C++ 代码会在电脑上编译成 .bin 固件,然后直接烧录到 ESP8266;烧录后会覆盖当前的 MicroPython 固件。

cd firmware/c
pio run -t upload

Web 后端

cd web
npm run dev:backend

Web 前端

cd web
npm run dev:frontend

学习路径

👉 查看课程大纲

10 课渐进式课程,从 GPIO 到综合项目,每课 1-2 个新概念。

About

esp8266-tutorial

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors