FireBeetle Board-ESP8266

概述

DFRobot FireBeetle萤火虫系列是专为物联网设计的低功耗开发组件,此款FireBeetle Board-ESP8266板载ESP8266 WiFi物联网无线模组,它集成了TCP/IP网络协议栈,32位低功耗MCU,10-bit精度ADC,并带有HSPI、UART、PWM、I2C和I2S等丰富的硬件接口。同时,FireBeetle Board-ESP8266可以在低功耗连接模式下工作,如DTIM10模式下,维持WiFi连接,仅需要1.2mW功耗,且该产品配置了16MB的外置SPI闪存,可用于用户程序和固件的存储。 在软件编程方面,FireBeetle Board-ESP8266支持Linux下的RTOS SDK开发,支持开源的arduino IDE编程,支持microPython解释执行。 FireBeetle Board-ESP8266主板在硬件上做了特殊的处理,不用手动切换boot模式,实现一键下载,大大降低了使用难度,提高了主板的稳定性。

特性

性能描述

引脚布局

FireBeetle Board-ESP8266主板在硬件上除了兼容乐鑫官网的引脚布局,还做了特殊的 Arduino IDE的PIN兼容,使用Arduino IDE编译时可以直接使用 Dx(x=1, 2, 3...)来控制相应的 GPIO 口。 Fig1: FireBeetle Board-ESP8266 PinOUT

warning_yellow.png
注:NC不连接,VCC为电源电压输出(5V-USB 供电时, 3.7V-锂电池供电时)

使用教程

FireBeetle驱动安�

FireBeetle-ESP8266采用CH340串口芯片,在绝大部分的设备中,都可以免驱使用。若您发现插上设备,驱动没有自动安装,也可以自行手动安装:点击下载CH340驱动程序 CH340_驱动安装

Arduino IDE配置

打开Arduino IDE,点击File->Preferences,如下图所示: step 1 在新打开的界面中,点击如下图红色圆圈中的按钮, step 2 将如下链接地址复制到新弹出的对话框中:

国内使用:http://download.dfrobot.top/FireBeetle/package_firebeetle8266_index.json 海外使用:https://raw.githubusercontent.com/DFRobot/FireBeetle-ESP8266/master/package_firebeetle8266_index.json

step 3 点击OK

打开Tools->Board:->Boards Manager...,如下图所示: step 4 Boards Manager会自动更新板卡,如下图所示: step 5 更新完成后,会在列表中看到FireBeetle-ESP8266主板,点击安装: step 6 安装完成后,列表会显示已经安装FireBeetle-ESP8266主板,如下图所示: step 7

如果FireBeetle Board-ESP8266主板安装成功,在Arduino IDE的Tools->Boards里面可以找到FireBeetle-ESP8266主板。 FireBeetle Board-ESP8266板卡选择

FireBeetle Board-ESP8266默认Blink灯连接到D5 (IO2),示例代码可以在File->Examples->Basics->Blink中找到,代码如下:

注意:ESP8266在不同开发环境下,映射的管脚不同,比如:Blink管脚调用写法为:2,指的是ESP8266本身的IO2,对应在Arduino中是 D5,多了一个"D",含义就完全不一样了。

// digital pin 2 has a LED_BLINK attached to it. Give it a name:
int LED_BLINK = 2;
// 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_BLINK, OUTPUT);
}

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

WiFi

FireBeetle Board-ESP8266主板安装成功后,Arduino IDE本身自带了很多示例程序,示例代码可以在File->Examples中找到,这里主要展示下WiFi设备扫描,示例代码如下:

/*
 *  This sketch demonstrates how to scan WiFi networks.
 *  The API is almost the same as with the WiFi Shield library,
 *  the most obvious difference being the different file you need to include:
 */
#include "ESP8266WiFi.h"

void setup() {
  Serial.begin(115200);

  // Set WiFi to station mode and disconnect from an AP if it was previously connected
  WiFi.mode(WIFI_STA);
  WiFi.disconnect();
  delay(100);

  Serial.println("Setup done");
}

void loop() {
  Serial.println("scan start");

  // WiFi.scanNetworks will return the number of networks found
  int n = WiFi.scanNetworks();
  Serial.println("scan done");
  if (n == 0)
    Serial.println("no networks found");
  else
  {
    Serial.print(n);
    Serial.println(" networks found");
    for (int i = 0; i < n; ++i)
    {
      // Print SSID and RSSI for each network found
      Serial.print(i + 1);
      Serial.print(": ");
      Serial.print(WiFi.SSID(i));
      Serial.print(" (");
      Serial.print(WiFi.RSSI(i));
      Serial.print(")");
      Serial.println((WiFi.encryptionType(i) == ENC_TYPE_NONE)?" ":"*");
      delay(10);
    }
  }
  Serial.println("");

  // Wait a bit before scanning again
  delay(5000);
}

打开IDE串口监视窗口,可以看到主板扫描到了周围的WiFi网络。 扫描到周围的WiFi网络

尺寸图

Fig1: FireBeetle Board-ESP8266主板尺寸图

常见问题

问: 如何给FireBeetle供电

- 答: 针对FireBeetle萤火虫系列主板供电问题,点击链接查看。

问: 如何使用MicroPython为FireBeetle编程?

- 答: micropython编程及FireBeetle系列技术讨论请加 619558168 QQ群

更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。

更多

DFshopping_car1.png DFRobot商城购买链接