ESP8266WIFI 开发
简介
主要是对于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模块乐鑫官方引脚图
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;
串口自动下载部分转载于:
串口下载分析
复位与下载电路:
PlatFormIO开发使用方法
打开串口调试终端
一键下载程序到ESP8266上
下载开源库到工程/仓库
更改文件系统地址、使用文件系统注意要点
其它注意事项