ESP32-SNOW开发文档

来自WhyEngineer
跳转至: 导航搜索

ESP32处理器简介[编辑]

Esp32 snow.png
类目 规格
主要特征

Tensilica LX6 双核处理器,主频 240 MHz,运算能力高达 600 DMIPS
内置 520 KB SRAM
内置 802.11BGN HT40 Wi-Fi 收发器、基带、协议栈和 LWIP
集成双模蓝牙(传统蓝牙和低功耗蓝牙)
最大支持外部16 MByte Flash
工作电压:2.2V 至 3.6V
工作温度范围:-40°C 至 +125°C
板载天线 / IPEX 连接外置天线

传感器

超低噪声模拟放大器
霍尔传感器
10 个电容式触摸传感器接口
32kHz 晶振

32x GPIO

3 x UARTs,带硬件流控
3 x SPI
2 x I2
12 x ADC 输入信道
2 x DAC
2 x I2C
任意 GPIO 均可配置为 PWM/定时器和输入/输出
OpenOCD 调试接口配备 32kB TRAX 缓存
50 MHz SDIO 主/从模式
支持 SD 卡接口

安全机制

WEP、WPA/WPA2 PSK/Enterprise
加密硬件加速:AES / SHA2 / 椭圆曲线加密 / RSA-4096

性能

支持 Sniffer、Station、softAP 和 Wi-Fi Direct 模式
最大数据速率:150 Mbps@11n HT40、72 Mbps@11n HT20、54 Mbps@11g、11 Mbps@11b
最大发射功率:19.5 dBm@11b、16.5 dBm@11g、15.5 dBm@11n
接收器灵敏度达 -98 dBm
UDP 持续吞吐量达 135 Mbps
深度睡眠模式下电流仅为 2.5 μA

ESP32 PSRAM简介[编辑]

外部SPI PSRAM[编辑]

采用4MB的ESP-PSRAM32

DATASHEET:文件:Esp-psram32-datasheet.pdf

ESP32 工具链[编辑]

如果需要使用PSRAM,需要使用最新的工具链:

[工具链安装]

ESP32-SNOW [编辑]

硬件相关[编辑]

原理图:文件:Esp32 snow v0b.pdf

PCB Gerber:文件:Esp32 snow v0b gerber.zip

Github地址[编辑]

[SNOW工程地址]

工程目录结构[编辑]

  1. main 主函数,工程入口,线程初始化
  2. www 通常复制到SD的根目录下,webserver会用到
  3. components 组件库
    • audio 音频的播放录制等(已经实现的有mp3文件播放,wav文件播放)
    • bsp 板级支持包(wm8978的舒适化,mpu6050的输出化)
    • espmqtt MQTT客户端库
    • espressif 对ESP32的简单封装,wifi初始化,网络时间引擎等
    • euler 6轴数据的融合
    • ftp ftp服务器
    • hal 对硬件的简单抽象
    • helix helix mp3解码库
    • http 简单的http client
    • lame MP3 编码库
    • libmdns mdns的简单封装
    • mad mad MP3解码库
    • webserver 简单的http server框架
    • websocket 简单的websocket

编译[编辑]

  1. make menuconfig
  2. 选择ESP32_SNOW Config
    • 可以选择用helix还是mad的mp3解码库
    • 可以选择是否开启FTP Server
  3. make flash monitor

Demo[编辑]

3D SHOW[编辑]

FTP SERVER[编辑]

Ftp test.png