_SKU_DFR0489_FireBeetle_Board ESP8266主板控制器 - jimaobian/DFRobotWikiCn GitHub Wiki

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系列兼容
  • 内置32-bit Tensilica L106 MCU
  • 支持Arduino、RTOS、microPython编程
  • 支持IEEE802.11 b/g/n标准WiFi (2.4 GHz~2.5 GHz),不支持5 GHz WiFi
  • 支持TCP/IP 协议栈
  • 支持锂电池充电(最大充电电流500mA)
  • 支持低功耗模式
  • 支持Arduino一键下载
  • 内置 10 bit 高精度 ADC

性能描述

  • 工作电压:3.3V
  • 供电电压:3.3~5V (3.7V锂电池 & 5V USB供电)
  • 控制器芯片:Tensilica L106 (32-bit MCU)
  • CPU时钟频率:80MHz(最高可达160MHz)
  • SRAM:50KB
  • 外置Flash:16MB
  • 支持低功耗:46uA
  • 工作电流平均值:80mA
  • 支持最大放电电流:600mA(LDO-3.3V电源输出)
  • 支持最大充电电流:500mA
  • 数字IO口:10个
  • 模拟IO输入:1个
  • SPI接口:1个
  • I2C接口:1个
  • IR接口:1个
  • I2S接口:1个
  • 接口方式:2.54mm间距(排针/排母),默认不焊接
  • 集成 Wi-Fi MAC/ BB/RF/PA/LNA
  • 无线标准:802.11 b/g/n
  • 支持 AT 远程升级及云端 OTA 升级
  • 支持 STA/AP/STA+AP 工作模式
  • 工作温度:-40℃~+85℃
  • 模块尺寸:58 × 29(mm)
  • 安装孔位置:53 x 24(mm)
  • 安装孔尺寸:内径3.1mm
  • 重量:24g

引脚布局

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

  • CHG:电源充电指示灯。如果没有插接锂电池,而是接其他电源(如USB),CHG灯闪烁;充电时,CHG灯常亮;充电完成后,CHG灯常灭。
  • RST:复位按钮
warning_yellow.png
注:NC不连接,VCC为电源电压输出(5V-USB 供电时, 3.7V-锂电池供电时)

使用教程

FireBeetle驱动安�

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

Arduino IDE配置

  • 配置URL网址到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

点亮一个LED——Blink

  • 板卡选择

如果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网络

尺寸图

  • pin脚间距:2.54mm
  • 安装孔间距:24mm/53mm
  • 安装孔尺寸:3.1mm
  • 主板尺寸:29.00mm×58.00mm
  • 板厚:1.6mm

Fig1: FireBeetle Board-ESP8266主板尺寸图

常见问题

| 问: 如何给FireBeetle供电 |

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

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

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

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

更多

DFshopping_car1.png DFRobot商城购买链接