esp8266web / esp32web

项目地址 esp8266web: 使用ESP8266基于Arduino制作web管理界面https://gitee.com/happysoul/esp8266webhappysoul/esp32webhttps://gitee.com/happysoul/esp32web几年前写的,一直没更新拿走当练手看看就可以了

使用 ESP8266开发板,基于Arduino开发

  • 我使用的 NodeMCU 1.0
  • flash size:4M (FS:3MB OTA:~512KB)

文件结构

  • data文件夹,使用工具上传到spiffs空间中。库文件使用gz进行压缩,减少http访问时间,网页显示内容都在index.html中,u文件夹为用户上传下载目录
  • png系统运行截图,用于展示部署后可以看到的web界面
  • esp8266web.ino arduino程序文件。ota.ino和web.ino中的方法会在被引用时候自动随esp8266web.ino一同编译
  • ota.ino 升级相关代码
  • web.ino web请求拆分放到此文件中

功能:

  • 1、通电后根据保存的多组wifi密码尝试连接,尝试失败后再尝试内置密码连接,如果依旧无法连接wifi则开启AP(名字:8266,密码:happysoul,192.168.4.1)
  • 2、网页功能:基础测试功能、wifi密码配置、spiffs文件(/u/目录下)
    开关板载LED,读写JSON文件 扫描wifi,暂未实现点击连wifi的功能
    重启8266的按钮
    显示spiffs信息,显示文件列表,删除文件 文件上传,下载到spiffs
  • 3、OTA升级:默认打开了OTA升级功能,也就是说程序烧到板子以后默认打开了网络升级功能,不需要串口了,随便找个5V或者3.3V的供电就可以了。
    只需要电脑和8266在同一个网络下,重启arduino IDE 在选择com口的位置就能看到8266的ip可以选择。

TODO 计划增加功能

  • 1、完善扫描wifi后保存连接的功能

依赖:

  • 1、ESP8266开发板支持
    工具 - 开发板 - 开发板管理器 搜索esp8266并安装,如果没有这个选择先配网址
    文件 - 首选项,开发版管理网址输入:https://arduino.esp8266.com/stable/package_esp8266com_index.json 确定后在上一步位置再搜索esp8266
    安装大约需要下载100M-200M的文件
  • 2、ArduinoJSON(项目-加载库-搜索ArduinoJSON并安装)
  • 3、ESP8266FS / 下载文件
    解压缩文件 arduino-1.8.9\tools\ESP8266FS\tool\esp8266fs.jar
    重启arduino,工具菜单下就能看到ESP8266 Sketch Data Upload功能
    LittleFS 等效于上面的工具(官方几乎放弃SPIFFS更换为LittleFS) https://github.com/earlephilhower/arduino-esp8266littlefs-plugin/releases

使用步骤

  • 1、确保依赖已经安装
  • 2、选择开发板及flash size
    某宝买的带有mini usb接口的一般就选择 NodeMCU 1.0,flash size:4M (FS:3MB OTA:~512KB) 也就是板载32Mbit,分出来24Mbit空间给spiffs使用,其中部分空间预留给OTA升级使用
    如果你是 ESP8266 8针脚的,那么你板载flash就是 8Mbit 也就是使用的时候需要选择 1M(FS:512KB OTA:~246KB)
  • 3、编译上传
  • 4、工具 - ESP8266 Sketch Data Upload
    这个步骤做的是将 data 文件夹下的文件复制到 esp8266 的spiffs空间中
    如果只修改了 data 文件夹中的内容不需要上传 ino 程序,只需要上传文件即可
    同理,如果只修改了 ino 文件,则不需要重复上传 data 的文件

ide配置和预览图片在png目录下

添加新按钮及后台代码方法

  • 1、修改网页。修改 data/index.html。搜索 userButton1 可以看到2部分代码,html和js,分别对应页面显示和点击按钮事件
  • 2、修改web.ino文件。需要注册url的响应代码:server.on("/userButton1", userButton1);然后在 void userButton1(){}中写入你的响应事件

同理如果需要加按钮可以复制上面样例代码可以扩展多个按钮

arduino esp8266web esp32web相关推荐

  1. Arduino ESP32Web配网

    Arduino ESP32Web配网 注意:设置的重置wifi信息的按钮定义在GPIO 0上面,上面那种开发板上的该引脚没有引出来,所以如果想不更改此引脚,短接需要用跳线条线来短接到GND,来触发,最 ...

  2. Arduino ESP32Web配网(二)

    Arduino ESP32Web配网(二) 相关篇<Arduino ESP32Web配网> 相对于之前的那篇文章,这篇的配网有不同的地方就是,html页面修饰了一下. 配网操作 1.如果是 ...

  3. AVR开发 Arduino方法(附四) 参考文献与网址

    1. 参考文献 [1] Arduino 魔法书:实现梦想的工具和技术. Jeremy Blum, 电子工业出版社, 2014 [2] Arduino高级开发权威指南. Steven F.Barrett ...

  4. Arduino学习笔记1---开发环境搭建

    主要内容:(一). Arduino IDE的下载及安装 (二). Arduino IDE的应用 (三). Arduino的程序结构 (四). Arduino程序的编译及下载 (一). Arduino ...

  5. 和12岁小同志搞创客开发:手撕代码,Arduino IDE 软件下载和环境搭建

    目录 1.软件下载 2. 软件安装 3.环境搭建和使用 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_3810 ...

  6. 串口监视软件_ESP32 Arduino教程:软件重置

    简介 该esp32 arduino教程旨在解释如何使用Arduino核心在ESP32开发板上执行软件重置. 本ESP32教程的测试是使用集成在ESP32开发板中的DFRobot的ESP-WROOM-3 ...

  7. 【从零开始的ROS四轴机械臂控制】(七)- ROS与arduino连接

    从零开始的ROS四轴机械臂控制(七) 十.ROS与arduino连接 1.虚拟机与arduino的连接 (1)arduino连接与IDE (2)PCA9685模块支持与测试 2.ROS与arduino ...

  8. 【Arduino】开发入门教程【一】什么是Arduino

    Arduino Arduino 是一款便捷灵活.方便上手的开源电子原型平台,包含硬件(各种型号的arduino板)和软件(arduino IDE).它适用于艺术家.设计师.爱好者和对于"互动 ...

  9. arduino跑python,尝试在我的Arduino和stu上执行Python3.7.2中的代码

    提前谢谢你.在 我会尽量简短.在 我有一个Arduino+IDE,有一个串行端口,工作正常. 我下载了python3.7.2.PySerial和VPython. 全部安装完毕.在 通过我的MacBoo ...

最新文章

  1. 算法设计思想(2)— 贪婪法
  2. Linux下的虚拟终端(可用于在本机上模拟串口进行调试)
  3. jquery-validation插件
  4. Python高阶函数(map,reduce,filter)
  5. Ubuntu与Mint哪个好?Linux运维发行版本推荐!
  6. 轻量级数据交换格式JSON
  7. 密文恢复出明文的过程称为_整流二极管的反向恢复过程图解
  8. su封面插件_儿豁嘛,这就是SU空间布线葵花宝典
  9. 什么是次梯度(次导数)
  10. multisim10.0安装教程
  11. ispostback的坑
  12. xml文件是什么?xml文档定义有几种形式?它们之间有何本质区别?解释xml文档又几种方式
  13. 如何在知网下载PDF格式的硕博毕业论文?
  14. 【PPT在插入excel对象时报错】
  15. 基于Java+Springboot+vue体育用品销售商城平台设计和实现
  16. Linux 命令(186)—— atq 命令
  17. 在linux系统下ping不通windows主机问题
  18. Micheal Collins nlp课程笔记(二)Tagging Problems and Hidden Markov Models
  19. 详解Flink中yarn部署模式以及测试
  20. FFmpeg的HEVC解码器源代码简单分析 解析器(Parser)部分

热门文章

  1. Android 基站定位源代码
  2. Servlet、HTTP协议、Request
  3. VRTK4.0学习(六):给控制器添加激光射线
  4. python方差函数_python 中的var()函数和cov函数用法-Go语言中文社区
  5. Spark--什么是宽窄依赖,及特殊join算子,join时何时产生shuffle,何时不产生shuffle
  6. SonicWALL日志模块详解及配置范例
  7. 三行代码,轻松实现 Scrapy 对接新兴爬虫神器 Playwright!
  8. 倍福PLC--实现Dword数据类型每位1的计数,即统计类型中“1”的位数
  9. PCTI8戴杨明同学在try2u.com【附上海试优网简介】
  10. 另辟蹊径的python学习手册(一)