最近在做一款低功耗设备,SoC选用上海乐鑫科技的一款ESP32 wifi模组。乐鑫官网。 ESP32简介ESP32是集成了2.4GHz WiFi和蓝牙双模块的单芯片方案,专为移动设备、可穿戴设备和物联网应用而设计。在功能简单的使用环境下具有很好的实用性,且操作简单,ESP32提供针对不同环境下的低功耗方案,功能框图如下:
ESP32提供了1296K片上存储器地址空间,19704K片外存储器地址空间。
* 片上存储包括:448K的内部ROM,520K的内部SRAM和少量的RTC Memory
* 片外存储器包括:最大支持16M片外SPI Flash和最大支持8M的片外SPI SRAM。 ESP32提供了低功耗管理功能,可配置设备进入省点模式,具体模式如下图所示:
 不同模式下的功耗参考值:
 乐鑫官方提供了详细的设计资料和软硬件参考用例,资源下载乐鑫官方资料下载链接。 软件开发环境搭建软件开发环境,主要分为以下三步: - esp32开发板
- esp-if SDK开发包
- 固件烧写工具
esp32开发板可根据乐鑫官方提供的硬件设计参考自己设计开发板,乐鑫提供了集成的开发板,查看链接,效果图如下所示
 esp-if SDK开发包(1)下载源码
SDK源码下载链接esp-if, (2)配置环境变量,在~/.bashrc文件末尾增加: export IDF_PATH=/home/test/share/code/esp32/sourceexport PATH=/home/test/share/code/esp32/toolchain/xtensa-esp32-elf/bin:$PATH(3)编译源码和example
进入examples/wifi/wpa2_enterprise/目录 # 编译选项配置make menuconfig# 开始编译make固件烧写工具下载ESP32烧写工具下载链接

运行 ESPFlashDownloadTool_v3.4.4.exe 如下图所示,选择esp32,连接串口,开始下载固件
 项目功能开发功能需求如下: (1)设备启动后初始状态自动进入AP模式,热点为esp_xxx(可选mac地址后4个字节),无密码 (2)客户端软件支持配置AP连接,并发送路由器wifi信息到设备 (3)设备接收到wifi信息后,退出AP模式,进入station模式开始连接wifi (4)设备无操作时进入睡眠模式,间隔30s唤醒 (5)设备支持外部按键唤醒,唤醒后自动连接wifi
部分代码如下(参考SDK的example): 更多功能可根据sdk手册进行相应配置。
|