ESP8266 学习

  • Post author:
  • Post category:其他




简介

主要是对于ESP8266的学习,网络应用和硬件串口应用,使用ESP8266实现常用的

网络应用



主要实现部分



环境配置

环境这里我尝试了很多方式,有安信可的Eclipse(配置环境和

编译代码

让人头痛),使用这个需要查手册NON OS或者带OS的API,还有Arduino ide的方式,也是很不舒服,无法自动跳转,跟傻瓜似的软件,但值得庆祝的是,Arduino有超级多的开源案例,免去了做轮子或者重头写等问题,快速开发。最后本人认为最合适的方式就是使用VS CODE+PlantformIO方式,可以把Arduino的代码无缝转到VS CODE里面使用,而且支持转到宏定义,颜色高亮,函数查询、串口通信、一键下载到开发板,总之Arduino有的,PlatformIO都有,而且和使用的也是Arduino库,这里

强烈推荐

使用VS CODE+PlantformIO方式开发8266/ESP32



ESP8266 最小系统和外围电路



ESP12F模块乐鑫官方引脚图

ESP12F模块乐鑫官方引脚图



nodeMcu开发板引脚图

NodeMcu引脚图



官网引脚图

官网引脚图

NodeMCU的开发工具包( Dev kit )提供了对Nodemcu GPIO的支持。唯一需要注意的是,NodeMCU Dev kit引脚的编号与

Nodemcu的内部GPIO编号不是一个编号

。例如,NodeMCU Dev kit上的D0引脚被映射到ESP8266的内部GPIO引脚16。



NodeMcu Dev Kit IO和ESP8266内部GPIO引脚映射关系

在这里插入图片描述



Arduino与nodemcu管脚映射文件

在这里插入图片描述

·注意

板载LED灯为D4



其它使用注意要点:

ESP8266的GPIO(1,3,9,10)不能按常规的GPIO方式进行理解和使用,根据ESP8266的系统(SoC)设计,其内部包含了处理器芯片等组件,处理器大约有16条GPIO线路,其中一些GPIO规定默认用于与其他内部组件进行通信,比如与内部闪存的通信等。这样我们大约还有11个GPIO引脚可按常规GPIO进行使用,在这11个针脚中,又有2个针脚预留给串口RX和TX。因此,最后只剩下9个通用I/O引脚,即D0到D8。

在实际使用中,从上图我们可以看到一些GPIO引脚同时兼备了其他功能,如RX, TX, SD2, SD3,这些引脚大多不作为GPIO使用,因为它们可用于其他进程。极端情况下,可使用 SD3 (D12)引脚,D12引脚主要用于响应GPIO/PWM/中断等功能。需要注意的是,D0|GPIO16引脚只能作为GPIO读/写使用,不支持任何特殊功能。



自动下载程序电路



CH340C/CH340G自动下载电路原理图

那么ESP8266如何进入下载模式呢。很简单,两句话。

1.在复位上升沿时,如果BOOT为1,则进入运行模式,此时内部程序正常运行。

2.在复位上升沿时,如果BOOT为0,则进入运行模式,此时可通过串口下载程序。

那么要想进入下载模式,一开始我的想法是应该是RST和BOOT都为0,然后RST置为1,这样RST就有一个上升沿,且BOOT为0。这句话先放这,我们再来看。

那么现在分析一下右侧电路逻辑。

DTR = 0,RTS = 0,此时Q1截止,Q2截止,RST= 1,BOOT= 1;

DTR = 0,RTS = 1,此时Q1截止,Q2导通,RST= 1,BOOT= DTR = 0;

DTR = 1,RTS = 0,此时Q1导通,Q2截止,RST= RTS = 0,BOOT= 1;

DTR = 1,RTS = 1,此时Q1截止,Q2截止,RST= 1,BOOT= 1;

串口自动下载部分转载于:

串口下载分析

电路原理图

使用Micro Usb或者Type C接口

复位与下载电路:

在这里插入图片描述



PlatFormIO开发使用方法



打开串口调试终端



一键下载程序到ESP8266上



下载开源库到工程/仓库



更改文件系统地址、使用文件系统注意要点



其它注意事项



版权声明:本文为successhand原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。