物联网模块esp8266 的使用经验【flash_download_tools_v3.6.6、arduino】

在此记录和分享一下esp8266的使用流程。

1 烧写固件

感谢:@PuddingHouChou

ESP8266学习一NodeMCU固件+Lua语言开发_esp8266 lua-CSDN博客

准备:

1 flash_download_tools_v3.6.6.exe // 固件烧写工具

2 nodemcu-master-9-modules-2016-03-14-02-11-21-float.bin //官方固件

步骤:

  • 1 选择固件文件
  • 2 右下角选择端口号,波特率。
  • 3 按图片设置spi和flash参数。
  • 4 如果已经写入过固件,先点击"erase"擦除。
  • 5 点击"start" 开始写入。

2 编写应用程序

感谢 @电子鼓捣师贺工

Arduino是什么?arduino的特点是什么?arduino可以做什么?学习arduino可以收获什么?_哔哩哔哩_bilibili

准备:

arduino 软件

步骤:

基础配置

1 下载开发板基础模块。通过工具>开发板>开发板管理器 搜索并安装esp8266.

2 在工具 开发板 中选择NodeMCU 1.0

3 在工具 端口 中选择esp8266所在串口。

完成后,就可以开始编写代码。

简单项目

项目有两个默认函数:setup(), loop().一个开机是执行一次。一个是不断循环执行。

然后利用pinMode(),digitalWrite()函数为引脚设置不同的高低电平。

例如,让板载led不断闪烁:

cpp 复制代码
// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  // turn the LED on (HIGH is the voltage level)
  delay(1000);                      // wait for a second
  digitalWrite(LED_BUILTIN, LOW);   // turn the LED off by making the voltage LOW
  delay(1000);                      // wait for a second
}

使用读取引脚值并通过串口传输:

cpp 复制代码
// the setup routine runs once when you press reset:
void setup() {
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
}

// the loop routine runs over and over again forever:
void loop() {
  // read the input on analog pin 0:
  int sensorValue = analogRead(A0);
  // print out the value you read:
  Serial.println(sensorValue);
  delay(1);  // delay in between reads for stability
}

复杂项目

涉及到复杂功能、传感器时,可以应用第三方库。直接调用其他人包装好的接口。

例如温湿度传感器:

1 在工具 》 管理库 中。选择并安装DHT库。

安装后,在代码中调用方式如下:

使用步骤依次是 引用库,设置引脚和传感器类型,启动和读取数值。

cpp 复制代码
#include <DHT.h>  //调用dht11驱动库 》》》》》》步骤1

#define DHTPIN D4          //说明数据接口为8266开发板的D4口,也可以写为#define DHTPIN 2既8266芯片的IO口2
#define DHTTYPE DHT11      //说明使用的模块是DHT11
DHT dht(DHTPIN, DHTTYPE);  //DHT11初始化 》》》》》》步骤2

//定义浮点类型变量保存测量值
float Temperature;
float Humidity;


void setup() {
  pinMode(D4, INPUT);
  delay(100);
  dht.begin();    // 启动》》》》》》步骤3
}

void loop() {
 // 读取数值》》》》》》步骤4
  Temperature = dht.readTemperature();  // Gets the values of the temperature
  Humidity = dht.readHumidity();        // Gets the values of the humidity
    delay(1000);
}

3 总结

通过arduino 使用Esp8266还是很简单的。使用c语言写些简单逻辑,给不同引脚设置高低电平,就能实现很多功能了。复杂点功能都有丰富的器件相关三方库。

相关推荐
TDengine (老段)7 小时前
TDengine 使用最佳实践(2)
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
Byte_Me15 小时前
IoT 小程序:如何破解设备互联的碎片化困局?
物联网·小程序·iot
时序数据说16 小时前
如何选择时序数据库:关键因素与实用指南
大数据·数据库·物联网·时序数据库·iotdb
电子小子洋酱19 小时前
VScode SSH远程连接Ubuntu(通过SSH密钥对的方式)
vscode·物联网·ubuntu·ssh
国科安芯1 天前
车规级ASM1042芯片在汽车无线充电模块中的应用探索
人工智能·单片机·嵌入式硬件·物联网·安全·汽车
厨 神2 天前
物联网-ESP8266
物联网
董技叔软件开发公司2 天前
物联网应用开发技术趋势与实践指南
物联网·物联网开发·物联网系统开发
TDengine (老段)2 天前
TDengine 集群部署及启动、扩容、缩容常见问题与解决方案
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
熬夜的猪仔2 天前
【Freertos实战】零基础制作基于stm32的物联网温湿度检测(教程非常简易)持续更新中.........
stm32·嵌入式硬件·物联网
网易独家音乐人Mike Zhou2 天前
【Linux应用】开发板USB共享网络,网线或USB以太网共享网络(局域网连接PC和开发板,实现PC给开发板共享网络,USB通过NDIS驱动共享)
linux·网络·单片机·mcu·物联网·嵌入式·iot