ESP32开发日记#0 简介

最近买回来了ESP32单片机开发板,借此来记录一下开发心得和踩过的坑。ESP32是一款物美价廉的国产单片机,只需不到30元就能买到双核240MHZ+WIFI+蓝牙,简直不要太香!


概述

ESP32官网

ESP32是乐鑫继ESP8266后推出的又一款集成WiFi功能的微控制器。ESP32拥有比ESP8266更加强大的性能,可以用来开发更加复杂的应用。就拿我所购买的ESP32-D0WD来说,该芯片具有下列特点:

  • WiFi支持 802.11 b/g/n,802.11 n (2.4 GHz) 速度高达 150 Mbps;
  • 支持蓝牙 v4.2 完整标准,包含传统蓝牙 (BR/EDR) 和低功耗蓝牙 (BLE);
  • 32位双核处理器,CPU正常工作速度为80MHz,最高可达240MHz,运算能力高达 600 MIPS;
  • 内置 448 KB ROM;
  • 内置520 KB SRAM;
  • 最大支持 16 MB 片外 SPI Flash;
  • 最大支持 8 MB 片外 SPI SRAM;
  • 包含常用微控制器的基本功能;

可以看到ESP32拥有极强的性能。而最令人振奋的是,作为国产单片机,它的价格极低。某宝上只需不到30元就能买到一个不错的小型开发板(我花了26元,包邮)。而其它同类型的意法半导体STM32WB系列和德州仪器CC2652R都比较贵而且难以购买。可以说在物联网单片机范围内,ESP32是同价位上唯一的选择。值得一提的是,ESP32支持Arduino IDE。如果此前拥有Arduino开发经验,那就可以非常快速地上手ESP32。


我购买的是Goouuu-ESP32模块开发板,配合0.96英寸OLED显示屏和面包板专用电源,整套下来不超过60元,真香!

JndcX6.jpg

此款模组的核心是 ESP32-D0WDQ6 芯片,具有可扩展、自适应的特点。两个 CPU 核可以被单独控制或上电。时钟频率的调节范围为 80 MHz 到 240 MHz。用户可以切断 CPU 的电源,利用低功耗协处理器来不断地监测外 设的状态变化或某些模拟量是否超出阈值。ESP32 还集成了丰富的外设,包括电容式触摸传感器、霍尔传感器、 低噪声传感放大器,SD卡接口、以太网接口、高速 SDIO/SPI、UART、I2S 和 I2C等。

CPU 和内存:

  • ESP32-D0WDQ6 内置两个低功耗 Xtensa® 32-bit LX6 MCU。
  • 448 KB 的 ROM,用于程序启动和内核功能调用。
  • 用于数据和指令存储的 520 KB 片上 SRAM。
  • RTC 中 8 KB 的 SRAM,即 RTC 慢速存储器,可以在 Deep-sleep 模式下被协处理器访问。
  • RTC 中 8 KB 的 SRAM,即 RTC 快速存储器,可以在 Deep-sleep 模式下 RTC 启动时用于数据存储以及 被主 CPU 访问。
  • 1 kbit 的 eFuse,其中 256 bit 为系统专用(MAC 地址和芯片设置);其余 768 bit 保留给用户应用,这些 应用包括 Flash 加密和芯片 ID。
  • 集成4MB的SPIFlash

开发文档

乐鑫官网的开发文档及演示下载

Goouuu-ESP32模块开发板文档和视频教程:
百度网盘https://pan.baidu.com/s/1U5n8oTH_LkrMQ8322gjESg 提取码: qcwe

最新版ArduinoIDE官方下载

官方GitHub上的 Arduino core for the ESP32

官方开发平台 Espressif IoT Development Framework

注意,Arduino和官方开发平台使用其中一个即可。Arduino开发起来很方便,但是有很多底层的东西没法调整,例如CPU主频,貌似只能以240MHZ运行。官方开发平台比较复杂,但是可以调整的参数非常多。这个根据个人水平和喜好选择即可。

Creative Commons License