ESP8266开发-Arduino IDE安装、配置与使用
ESP8266是一款价格十分亲民的wifi模块,在某宝上一块ESP8266开发板只要10几块钱!可以买来玩玩一些物联网相关的小项目。
ESP8266的开发方式有多种,目前我了解到的有:
- 使用Arduino IDE开发,沿用Arduino的开发风格,简单易上手
- 使用ESP8266官方的SDK开发
- 使用MicroPython开发,沿用Python的编程风格,此方式需要先给板子烧写一个特殊的固件
因为我之前玩过Arduino,而且Arduino编程简单易操作,所以就选择先使用Arduino IDE来玩一玩ESP8266。
1 安装Arduino IDE
Arduino官网下载IDE:https://www.arduino.cc/en/software,我之前安装的版本是Arduino IDE 1.8.16,目前又有新版本的,可以安装最新的,不过基础功能相差不大。
根据自己使用的平台,点击右侧的下载。
我下载得到arduino-1.8.16-windows.exe安装文件,常规的“下一步”的安装方式安装即可。
安装完之后,打开,可以看到我的软件里已经有了Arduino AVR和ESP8266的开发环境(注:ESP8266的开发环境是我在旧版本的Arduino IDE中安装过,安装新版本IDE后,之前的配置也会自动加载进来),如果你之前没有配置过ESP8266,IDE中应该默认只有Arduino AVR这一项。
2 卸载旧的ESP8266开发包(可选)
因为我之前安装过2.6.3版本的ESP8266,那我就先卸载掉,再安装一个更新版本(3.0.1)的ESP8266安装包。
- 卸载旧的ESP8266安装包
在文件管理器地址栏输入 %LOCALAPPDATA%/Arduino15/packages,回车进入,然后删除掉其中的esp8266文件夹即可卸载
3 安装ESP8266开发包
因为Arduino IDE默认是给Arduino开发板用的,默认只有Arduino开发板的相关开发资源。要想在在Arduino IDE中使用ESP8266,需要额外安装ESP8266的开发包。安装方式有两种,一种是在线安装,一种是使用离线包安装。
3.1 在线安装(不推荐)
在线方式需要连网下载安装包,对网络环境要求较高,不推荐这种,因为经常因网络原因安装失败。不过还是要简单介绍一下这种安装方式。
在Arduino IDE下载ESP8266开发包,首先是找到菜单里的:文件->首选项
然后在“附件开发板管理网址”中输入: http://arduino.esp8266.com/stable/package_esp8266com_index.json
接着在:工具->开发板->开发板管理器,点击开发板管理器
输入esp8266,查看esp8266搜索结果,在线安装。
在线安装会很慢,容易失败。
3.2 离线安装(推荐)
使用下载好的离线安装包(exe文件),一键安装,十分的方便
注:我的离线包是从这里下载的:https://www.arduino.cn/thread-76029-1-1.html
安装后,就可以看到ESP8266的相关资源了。
4 简单测试程序
编写一个简单的连网测试程序,测试一下ESP8266的基本功能。
4.1 Arduino编程快速上手
Arduino编程非常容易上手,它的基础框架就是一个初始和一个主循环:
//初始化
void setup()
{Serial.begin(9600);Serial.println("esp8266 test");initWiFi();
}//主循环
void loop()
{Serial.println("hello esp8266");delay(1000);
}
初始化就是setup函数,我们可以在这里进行一些基础的初始化,比如串口初始化就是调用:
Serial.begin(9600);
指定波特率9600,这个串口也是板子的供电口和程序下载口,通过Arduino IDE自带的串口监视器即可查看串口输出信息,不用再打开其它的串口助手之类的软件,用起来十分的方便。
此外,还可以将自己写的一些初始化函数放到setup函数中,用于程序开机时初始化,比如我们自己写的WIFI初始化函数:initWiFi()。
主循环就是loop函数,类似于单片机开发中的main函数里的while(1){},我们可以在这里进行程序逻辑代码的编写,比如每隔1秒循环打印一些信息:
Serial.println("hello esp8266");
delay(1000);
这个delay函数也是Arduino自带的,单位是毫秒。
4.2 WIFI连网测试程序
Arduino的编程语言,其实就是C++,当然也支持包含头文件以及类的操作。
比如要使用WIFI功能,需要先包含ESP8266WiFi.h这个头文件。
ESP8266WiFi这个库的内部已经帮我们实现了各种WIFI操作的各种功能函数,我们只需要实例化一个WiFiClient对象,就可以操作实现各种功能了:
#include <ESP8266WiFi.h>const char ssid[] = "xxxxx"; //WiFi名
const char pass[] = "xxxxx"; //WiFi密码WiFiClient client;
WIFI初始化的流程也很简单,主要有3步:
配置WIFI为Station模式,即我们的ESP8266作为一个WIFI使用设备
关于WIFI的工作模式(STA模式与AP模式,可参考我之前的文章:)
传入WIFI热点的ssid和密码,使得ESP8266连接到热点
读取WIFI连接状态,等待连接成功
//初始化WIFI
void initWiFi()
{Serial.print("Connecting WiFi...");WiFi.mode(WIFI_STA); //配置WIFI为Station模式WiFi.begin(ssid, pass); //传入WIFI热点的ssid和密码while (WiFi.status() != WL_CONNECTED) //等待连接成功{delay(500);Serial.print(".");}Serial.println("");Serial.println("WiFi connected");Serial.println("IP address: ");Serial.println(WiFi.localIP()); //打印自己的IP地址
}
4.3 测试效果
Arduino的操作界面也十分的简洁,最左边的编译,第二个是编译+烧录,最右边那个放大镜图标是串口监视器,可以直接查看板子的串口输出。比如运行我们的测试程序后,就可以看到如下的串口打印信息了:
另外,注意在编译和下载时,要选对开发板的型号和串口号:
5 总结
本篇介绍了Arduino IDE的安装、ESP8266开发包的安装以及Arduino编程的快速入门来测试ESP8266的连网功能。
ESP8266开发-Arduino IDE安装、配置与使用相关推荐
- Arduino基础入门篇02—Arduino开发环境IDE安装使用
工欲善其事,必先利其器.本文主要介绍Arduino开发环境IDE的安装及功能介绍. Arduino IDE安装 从官网下载IDE开发环境,IDE下载地址 .笔者使用Win10系统,点击 Windows ...
- Arduino IDE安装 ESP8266 文件系统上传工具
ESP8266 Arduino IDE 文件上传工具 首先关闭Arduino IDE. 把下载的压缩包解压,复制ESP8266FS文件夹到Arduino IDE安装目录的tools目录下 打开Ardu ...
- Arduino IDE安装UNO和NANO开发板驱动教程(CH341SER.EXE)
Arduino IDE安装UNO和NANO开发板驱动教程(CH341SER.EXE) win10系统最方便的地方之一就是可以自动安装驱动,这个功能对于使用Arduino进行硬件编程的人而言可谓无比欢乐 ...
- 从Arduino IDE安装到成功控制LED灯光的开发过程|阿里云远程控制灯光案例|Arduino编译缺少python27.dll问题|玉念聿辉
目录 初识Arduino 安装Arduino IDE ESP32 Blink(控制主板led) 安装 FireBeetle Board-ESP32 开发板核心 连接 FireBeetle Board- ...
- Arduino IDE安装过程及esp32下载
目录 Arduino IDE使用教程 Arduino IDE是什么 Arduino IDE安装 安装esp32 Arduino IDE使用教程 Arduino IDE是什么 Arduino IDE 是 ...
- 为Arduino IDE安装添加库
什么是库? 通俗的说,库就是一系列程序文件的组合.因为有了库,我们可以很轻松的实现Arduino与外部硬件的协作或进行数据通讯.举例说,通过Arduino内置标准库中的Servo库,您只需要简单的几行 ...
- ROS与Arduino IDE 安装,比官网详细点(第一次学)
网上找到各种安装内容都差不多,安装中会出一点小问题,我的解决方法 arduino IDE安装,照着输没啥问题 sudo apt-get install arduino 运行增添目录选add也没啥问题 ...
- vue 一个页面多个router-view如何配置子路由_前端开发:如何安装配置Vue路由?
大家好,我来了!本期为大家带来的Web前端学习知识是"前端开发:如何安装配置Vue路由?",喜欢Web前端的小伙伴,一起看看吧! Vue Router 是 Vue.js 官方的路由 ...
- arduino支持的内核版本_Arduino开发(arduino IDE)
Arduino Yún和Arduino Due主板开发必须下载arduino1.5.5-r2.arduino官方推出的一个集成开发环境.是由Java.Processing. avr-gcc等开放源码的 ...
最新文章
- 极客新闻——12、错误和失败的区别是什么?
- IIS初始化(预加载),解决第一次访问慢,程序池被回收问题
- JMS调用IBM MQ监听模式
- 为什么我恨Scrum?
- Python:利用原生函数count或正则表达式compile、findall、finditer实现匹配统计(包括模糊匹配的贪婪匹配、懒惰匹配)
- 组策略 之 恢复默认组策略对象命令
- python蛇术_小蛇学python(16)numpy高阶用法
- 任老爷子退休以后,华为谁最有可能接手,为什么?
- 牛!这本 Python 3.6 的书火爆了 IT 圈!
- Microsoft visio 2013 professional破解软件
- linux 山东大学 试卷_2020超星尔雅战略管理(山东大学)作业题库
- Google 和 bing 都无法替代的10大深网搜索引擎
- 【C实现算法00】一个数组中除一个(两个)数只出现一次外其它数字都出现了两次,找出这个数,编程实现。
- 与计算机博弈相关的学术论文,爱恩斯坦棋计算机博弈系统的研究与实现计算机应用技术专业论文.docx...
- [改善Java代码]由点及面,一叶知秋----集合大家族
- Python字符串算法
- Java精品项目源码第94期房屋租赁管理系统
- 自媒体视频剪辑中的那些素材到哪里找?
- 简历信息提取二:PaddleNLP完成简历信息抽取
- ※ 冯·诺依曼体系结构模拟
热门文章
- [yzhpdh多读paper]Mass-scale emotionality reveals human behaviour and marketlace success
- 语音播报功能的几种实现办法(包含TTS)
- 【牛投客】:股票资金流入是股市常用术语
- 旭凤为什么和锦觅共付鸿蒙,《香蜜》中旭凤对锦觅做的5件事,最让她开心的不是灵修,而是它...
- 李开复:人工智能时代的科学家创业
- android bitmap 失真,Bitmap.createScaledBitmap 失真
- 因果论 —— 模型、推理和推断(概率、图及因果模型)②
- SenseTime Ace Coder Challenge 暨 商汤在线编程挑战赛* B. 我觉得海星
- SRv6技术课堂:SRv6概述
- vue动态添加/删除dom元素