ESP-01S开发环境搭建及新手点灯教程,全解相当详细(ESP8266-01s)
一、模组简介
ESP8266是实现WiFi通讯的一个模块种类有很多分为ESP8266-12、ESP8266-12E、ESP-01s、ESP32等等这些模块一般用于WiFi通讯 如图是ESP-01s模块它是由一颗ESP8266作为主控再由一颗flash作为存储芯片组成的,带有板载芯片供电采用3.3V电压使用串口进行烧写程序和AT指令集调试的,注意芯片一旦烧写了程序便不可使用AT指令集需要重新刷回AT指令集固件才可以使用AT指令集
二、开发工具
开发硬件的工程师都知道如果要烧写一款模块或芯片需要的不只是你聪明的头脑和陪伴你身边的电脑,更重要将硬件与电脑结合的是芯片的 下载/烧录 器像比较有名的NXP的freescale有 昂贵的ISP下载器,j-link下载器然而开发这颗芯片你不需要花特别高的价格购买下载器,仅需一颗USB-TTL串口通信模块就可以完美的将电脑和你的芯片连接起来,当然还要配合一下电路才能实现烧录和运行的转换
这个就是我搭建的一块开发电路用这块电路可以实现下载和运行,在这块板子上我可以使用5V电压因为我的板子上板载一颗AMS1117-3.3v的稳压芯片可以实现将5V电压转为3.3V同时因为拥有这颗芯片我的开发板的电流也得到了增强从而可以直接在下面是使用时会看到下载完程序在板子上是可以直接运行的 这里要注意一点是当想要下载时模块上的GPIO0需要接入低电平(默认为高电平)EN使能引脚接高电平,当RST接高电平时实现模块的复位由于我的板子没有设计复位电路所以当我转换模式时需要手动将电源跳线帽重新拔插从而实现复位功能,只有当断电时将GPIO0拉低然后再上电才可以进入下载模式连接TTL的RX与TX要注意要与模块的RX和TX反接如(TTL的RX接模块的TX)
当然如果大家认为我以上所说的过程有点麻烦也可以在某宝上够买这样的一颗模块从而可以快速搭建硬件的开发环境,当然这颗模块也是折腾了小编半天才弄好,这块模块是默认为串口运行模式也就是适用于AT指令的,但是小编还是硬生生改成了两用的,只需要将此模块的下图所示的两个接口用一根细线短接在一起然后将模块插上就可以实现下载模式了,记住如果运行时需要将短接线拿下来
三、开发软件
开发方式官方也提供了几种可以使用官方的SDK来开发也可以用嵌入式RTOS操作系统,当然作为小白本篇采用的开发方式为Arduino IDE这种开发方式入门比较方便不需要太多的东西好下面来介绍一下软件 当然先要奉上一段下载地址:Arduino IDE官网点击进入
进入之后是这样一个高大上的页面点击页面里面的software下的download进行下载软件 当然此软件近年来也支持在线开发点击online tools就可以进入在线开发 点击download后的界面会是这样选择你电脑的系统此软件支持Linux系统和mac系统还有winxp和win10系统选择合适自己的系统进行下载即可 点击后会进入如下的界面在界面中有两个按钮由于这个开发环境作为开源环境所以希望在这里有人可以支持他们一下你可以选择为此项目贡献几美分并下载和只下载两种,这个贡献有图中几个等级3,5,10,25,50以及其他的数量的便士,如果你想支持可以选择这几个然后下载如果不想可以直接点击旁边的Just DOWNLOAD
之后便会出现如此对话框点击下载即可那么小编在这里也贡献出下载地址供未读懂下载方式的朋友来直接==点击下载== 安装过程不必多说直接一路下一步中途选个路径就好下载之后win10系统你可以在开始栏中找到这个软件 下面打开软件
点击后会出现一个小窗口
开发过硬件的朋友都知道硬件有初始化部分和死循环部分,在arduino中没有main函数main函数是被隐藏在这个软件背后的,我们需要做的东西很简单只需要知道你需要什么东西,什么东西需要一直跑写在这两个部分就可以了 当然到这里并没有完因为你没有ESP8266的库所以你没有办法去开发这个模块所以要做的事就是下载库首先点击文件 然后点击图中的首选项在这里我们需要修改这一条也是就管理器网址点击图标便可以更改 http://arduino.esp8266.com/stable/package_esp8266com_index.json 复制上面这段网址到里面 如图然后点击好,然后就可以完成更换网址操作了
然后在工具选项下点击管理库
在此页面找到esp8266 by ESP8266 community然后点击安装 在安装完成之后记得配置你的模块型号如图配置好之后便可以下载
四、点亮第一盏灯
在文件下的示例找到ESP8266然后再点击Blink
然后有这样的代码
/*
ESP8266 Blink by Simon Peter
Blink the blue LED on the ESP-01 module
This example code is in the public domain
The blue LED on the ESP-01 module is connected to GPIO1
(which is also the TXD pin; so we cannot use Serial.print() at the same time)
Note that this sketch uses LED_BUILTIN to find the pin with the internal LED
*/
void setup() {
pinMode(LED_BUILTIN, OUTPUT); // Initialize the LED_BUILTIN pin as an output
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, LOW); // Turn the LED on (Note that LOW is the voltage level
// but actually the LED is on; this is because
// it is active low on the ESP-01)
delay(1000); // Wait for a second
digitalWrite(LED_BUILTIN, HIGH); // Turn the LED off by making the voltage HIGH
delay(2000); // Wait for two seconds (to demonstrate the active low LED)
}
然后连接好硬件在工具里面选择好串口然后就可以进行代码上传了之后断开GPIO0与GND的连接重新上电就可以看到小灯闪烁证明硬件和软件配置无误!
至此完成了ESP-01S在arduino开发环境下点亮第一盏灯的操作 |