06~12-Esp8266物联网芯片的使用(一)-part02/03-ESP8266开发环境、编程举例

这篇具有很好参考价值的文章主要介绍了06~12-Esp8266物联网芯片的使用(一)-part02/03-ESP8266开发环境、编程举例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

上一章主要作了芯片介绍,这一章主要作对开发环境的介绍。

认识Arduino

Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(ArduinoIDE)。它构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。主要包含两个部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。

在Arduino上配置ESP8266开发环境(离线包)

(1)打开Arduino IDE(版本任意)-> 首选项 ->附加开发板管理器网址,填入:

http://arduino.8266.com/stable/package_esp8266com_index.json

之后重启IDE。

06~12-Esp8266物联网芯片的使用(一)-part02/03-ESP8266开发环境、编程举例

(我的电脑上已经安装过Arduino,并且其安装操作也非常的简单,故略过安装)

(2)重启后检查“附加开发板管理器网址“是否成功更改。不成功则需要再试一次。

(3)将packages文件夹解压到C:\Users\Username(你的用户名)\AppData\Local\Arduino15\staging目录下。(2)成功则不用执行第(3)步。

(4)打开工具->开发板 -> 点击开发板管理器 ->滚动到最下面 选择:esp8266 by ESP8266 Community 版本选2.7.2,点击安装。

首先我遇到的第一个问题是开发板管理器找不到esp8266。

考虑重启软件,失败。

考虑开发板管理器中的合并,未找到相关管理器,失败。

考虑重启电脑,失败。

考虑更新Arduino,更新至2.0.X版本。失败。

那么最终经过多日折腾,终于找到了解决办法,是Json文件太旧引起的:

首先复制的时候就不能是```这样的代码块,会有no protocol报错;

然后找到开发者的更新日志找到源码文件夹里面的README.md,终于找到新的url(3.1.2):

https://arduino.esp8266.com/stable/package_esp8266com_index.json

之前http协议已经更新到https协议。

启动Arduino

启动Arduino需要对IDE进行环境测试。代码如下:

#include<dummy.h>

int LEDPin=D5;
void setup()
{
    pinMode(LEDPin,OUTPUT);
}
void loop()
{
    digitalWrite(LEDPin.HIGH);
    delay(500);
    digitalWrite(LEDPin.LOW);
    delay(500);
}

此处举了一个温湿度传感器上传数据库的例子:文章来源地址https://www.toymoban.com/news/detail-446028.html

//调用库
#include<dht.h>//DHT传感器的库
#include<ESP8266WiFiMulti.h>//连接wifi的库文件
#include<ESP8266WebServer.h>//构建服务器的库文件


//实例化
ESP8266WiFiMulti wifiMulti;
ESP8266WebServer tempreture_humidity_server(80);//以端口80构建服务器
dht DHT;

//功能性函数的初始声明
void conToNet();
void handleRoot();//初始声明根目录请求处理函数
void handleNotFound();//初始声明无效目录请求处理函数

//初始声明全局变量

float temp,humi;//温度和湿度
char local_temp_humi_values[250];

//全局引脚定义

int dataPin=D5;//初始化引脚,用于指定传感器

//setup

void setup()//setup函数仅执行一次
{
  Serial.begin(9600);//定义调试用串口波特率,串口0
  conToNet();//连接wifi
  tempreture_humidity_server.begin();//启动服务器
  tempreture_humidity_server.on("/",HTTP_GET,handleRoot);//配置根目录访问处理函数
  tempreture_humidity_server.onNotFound(handleNotFound);//配置无效目录访问处理函数
  Serial.println("HTTP tempreture_humidity_server started");//显示服务器启动成功

}

void loop(){
  //从数据引脚读取数据
  DHT.read22(dataPin);//执行DHT类中的read22方法
  
  //提取对应的温湿度数据
  temp=DHT.temperature;//提取DHT类中的温度属性
  humi=DHT.humidity;//提取DHT类中的湿度属性

  //参数串口输出
  Serial.print("Temperature = ");
  Serial.print(temp);
  Serial.print(" ℃ ");
  Serial.print("    Humidity = ");
  Serial.print(humi);
  Serial.print(" % ");
  //延迟一段时间,否则代码报错
  delay(2000);//程序空运行2000ms

  snprintf(local_temp_humi_values,sizeof(local_temp_humi_values),"{\"temperature\":%2.1f,\"humidity\":%2.1f}",temp,humi);
  //{"temperature":29.4,"humidity":34.1}是json格式
  Serial.println(local_temp_humi_values);

  tempreture_humidity_server.handleClient();
}
//访问函数
void handleRoot()
{
  tempreture_humidity_server.send(200,"text/plain",local_temp_humi_values);
}

void handleNotFound()
{
  tempreture_humidity_server.send(404,"text/plain","404:Not found");
}
//wifi连接函数
void conToNet()
{
  Serial.print("Connecting");
  wifiMulti.addAP("711206","64431286");//加载多个可能有效的路由器ID和密码
  wifiMulti.addAP("vivo S5","1234567890");
  wifiMulti.addAP("abc","1234567890");
  wifiMulti.addAP("203","203forever");

  while(wifiMulti.run()!=WL_CONNECTED)
{
  delay(1000);
  Serial.print(".");

}
  Serial.println();
  Serial.print("WiFi Connected!!\nName:");
  Serial.println(WiFi.SSID());
  Serial.print("IP Address:");
  Serial.println(WiFi.localIP());
}

到了这里,关于06~12-Esp8266物联网芯片的使用(一)-part02/03-ESP8266开发环境、编程举例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ESP8266/ESP32 NodeMCU接入阿里云物联网平台

    阿里云物联网平台公共实例是免费的,且不像然也等服务器一样无法区分不同用户发布的话题。本文采用常规的pubsubclient库连接阿里云。ESP8266/ESP32用pubsubclient接入阿里云平台截至写稿的现在,网上有的资源较少,现在我就来介绍一下使用方法 1.登录阿里云官网https://www.aliyu

    2024年02月02日
    浏览(65)
  • 【ESP8266 快速入门】硬件:ESP12S/ESP12F最小系统设计及typeC自动下载电路设计

    0.引言 ESP8266面向 物联网 应用的,高性价比、高度集成的 Wi-Fi MCU 。 芯片ESP8266EX采用的QFN无引脚封装,且需要搭配FLASH使用,以及设计天线;使用起来比较麻烦。 我希望使用起来更加方便,便想到了使用ESP12S/12F这种集成模组(集成FLASH、天线)。 我只需设计一个最小系统及

    2024年02月06日
    浏览(207)
  • ESP8266入门教程12:自动配网

    下载第三方库WiFiManager到lib文件夹  ​git clone https://github.com/tzapu/WiFiManager.git 第2行:包含WiFiManager库的头文件 第12行:创建WiFiManager对象 第14行:配置自动配网热点名称 1、编译并上传固件,然后使用手机连接名称叫做“ESP8266-Auto”的WIFI热点 2、点击【Configure WiFi】开始配网,

    2024年02月12日
    浏览(54)
  • ESP8266物联网开发入门教程

    B站本图文链接https://b23.tv/F7tPcAm 先消除一下零基础爱好者的担忧:这玩意有点C语言基础就能搞,学不会我就把键盘吃了 教程适用于刚入门得小白,根据教程自行拓展就可以用8266开发出属于自己的智能家电,希望能帮助到大家|・ω・`) 一:需要的硬件:电脑、8266开发板(笔

    2023年04月08日
    浏览(54)
  • 嵌入式硬件介绍(一)|ESP8266 Wi-Fi 模块介绍(以ESP8266 -12F为例)

          本文主要讲解安信可ESP8266 WiFi模块的类型及功能,安信可ESP8266 WiFi模块是一款基于乐鑫ESP8266EX的超低功耗UART-WiFi模块。这类模块集成了业界领先的Tensilica L106超低功耗32位微型MCU,带有16位精简模式,主频支持80MHz和160MHz,支持RTOS,板载天线等。支持标准的 IEEE802.11 b/g

    2024年04月11日
    浏览(45)
  • 【ESP-01S / ESP8266 AT指令连接阿里云物联网平台】

    关注+星标 公众号,不错过精彩内容 作者 | MakingClub 微信公众号 | electronic造物实验室 注册阿里云账号并搜索物联网服务。选择并进入物联网平台产品页。 点击管理控制台,进入物联网平台管理界面。 选择公共实例(如果尚未开通,需要先进行开通,具体步骤不再赘述),然

    2024年02月07日
    浏览(65)
  • 01-ESP8266 NodeMCU 物联网开发初识

    Author:teacherXue ESP8266 是 Espressif Systems 生产的 Wi-Fi 片上系统 (SoC)。它非常适合物联网和家庭自动化项目,目前有非常高的市场普及率,还有更加高端的同时支持wifi和蓝牙的双核心芯片ESP32,可以在乐鑫官网查看完整的芯片列表。 ESP8266芯片的技术特性 处理器: L106 32 位 RISC 微

    2024年02月11日
    浏览(54)
  • 物联网智能网关(ESP8266WIFI模块)

    一、温湿度和光敏数据采集。要求:采集ESP8266平台中温湿度传感器与光敏电阻的数据并传输至网页端显示。 (1)分别对应温湿度传感器及光敏传感器的功能绘制或展示硬件连接原理图并简单说明。   光敏电路:光敏电路,实现感光效果   温湿度(DHT11)电路:测量温湿度

    2023年04月22日
    浏览(53)
  • 物联网中的ESP8266该这么用!

    🙌秋名山码民的主页 😂oi退役选手,Java、大数据、单片机、IoT均有所涉猎,热爱技术,技术无罪 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 获取源码,添加WX 在学习物联网的过程中,大家首先想到的通信应该就是蓝牙和wifi了,而wifi中又属esp8266比较出名,包括esp32的快速崛起

    2024年02月06日
    浏览(39)
  • ESP8266学习笔记一 互联网通讯协议

    协议作用简单来说 就是规范不同的语言; 包含的协议有 TCP/IP实际上是一个协议组   不同的协议处于不同的层次上 (由下到上) 链路层WIFI 网络层IP 传输层TCP/UDP 应用层 HTTP 链路层: WIFI Ethernet 就是实实在在的进行数据传输的物理连接层 ESP32的三种模式: 链路层 数据帧 1,

    2023年04月27日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包