ESP32是Espressif乐鑫信息科技推出的一块WiFi芯片。
拥有40nm工艺、双核32位MCU、2.4GHz双模Wi-Fi和蓝牙芯片、主频高达230MHz,计算能力可达600DMIPS。
-涵盖精细分辨时钟门控、省电模式和动态电压调整等特征。
-它集成了天线和射频巴伦,功率放大器,低噪声放大器,滤波器和电源管理模块等元器件,性能稳定,易于制造,工作温度范围从-40℃到125℃。
-支持多种通信协议,如:I2C. I2S. SPI. UART. CAN.
-多种调节管理模式:Active模式、Modem-sleep模式、Light-sleep模式、Deep-sleep模式、Hibernation模式。可根据不同需求,调节所需方案。
ESP32的应用
TTGO使用热门的ESP32芯片为基础,设计研发了TTGO系列产品,在ESP32拥有的无线WiFi和蓝牙的基础,TTGO增加了其他的功能,比如T8 V1.1版本,这个产品增加了SD卡拓展功能,3D天线,同时提供基础代码程序,我们还可以再开发测试中使用它们。
T18 V1.0版本,我们加入了18650电池座,你可以更方便地为产品供电,还有全新的按键交互方式,可以更好地进行操作,还有TS V1.3,添加TFT彩色屏幕,还有MPU9250运动传感器模块,产品应用的范围更广泛。
另外今年比价火热的电子墨水屏 TTGO中的T5,T5S,也是很受欢迎 它们添加了较为省电的电子墨水屏,而且不再只是普通的黑白两色,还增加其他的颜色,让你随意选择你喜欢的色彩。
还有最近刚刚出的一款 T-Watcher ,这一款也是采用集成了Wi-Fi和双模蓝牙功能的ESP32芯片作为主核MCU。2.2 英寸 ILI9341 TFT高清显示屏更加为本产品增添了不少声色。ILI9341是一款262144色单芯片SOC驱动器,分辨率为240x320(RGB),支持3/4线串行接口.
ESP32的特征
-沉金工艺 -高性价比 -体积小,易于嵌入其他产品 -强大的功能支持LWIP协议,Freertos
-WiFi支持三种模式:AP,STA和AP + STA -支持Windows系统(cygwin和msys32)和Linux系统
-支持Arduino-ide, ESP-IDF, Micropython多种开发环境 -支持Lua程序,轻松开发
-网址:https://github.com/LilyGO
ESP32的应用场景:
-相机的视频流 -OTT机顶盒设备 -家庭自动化 -WIFI语音识别设备
-工业无限控制 -健康医疗 -运动检测和防丢报警器 -可穿戴电子产品:智能手环,智能手表
TTGO就有研发了一款相机模块,也是用了esp32芯片 它的芯片组:ESPRESSIF-ESP32-PCIO-D4240MHzXtensa®单/双核32位LX6微处理器
看看这款相机模块的规格:
FLASH: QSPI闪存/ SRAM,最高4 x 16 MB
SRAM :520 kB SRAM KEY复位,IO32
显示0.91 SSD1306 电源指示灯呈红色
USB转TTL CP2104 相机OV2640 2兆像素
转向发动机模拟伺服 板载时钟40MHz晶体振荡器
工作电压2.3V-3.6V 工作电流约为160mA
工作温度范围-40℃?9?1+ 85℃ 尺寸64.57mm * 23.98mm
电源规格
电源USB 5V / 1A 充电电流1A 电池3.7V锂电池
Wi-Fi 功能
-802.11 BGN HT40 WIFI收发器、基带、协议栈和LWIP
-802.11n(2.4Ghz),高达150Mbps -802.11 I安全特性:每个认证和TSN
-802.11 e:多个队列管理,充分利用QoS流量优先级
-Wi-Fi受保护的访问(WPA)/ WPA2 -Wi-Fi保护设置(WPS)
-A MPDU和A-MSDU聚合 -分段和碎片整理
-带有硬件加速器的SSL堆栈 -自动信标监测/扫描 -基础设施BSS工作站模式/软AP模式
-Wi-Fi直连(P2P),P2P发现,P2P组所有者模式和P2P电源管理
-UMA兼容和认证 -天线分集和选择 -WMM节电U-APSD
既要平衡项目的进度,也要按照事情的规律来做事情 。这就需要快速的准备一些预备知识,磨刀不误砍柴功,仓促上阵,只会欲速则不达。
ESP32的基本参数如下:
更深入一点的,我们可以看看ESP32的规格书:
《esp32_datasheet_cn.pdf》
《esp32_technical_reference_manual_cn.pdf》
这些都可以从乐鑫的网站上下载。
接下来就要真刀真枪的实验一番了,不过首先就要安装ESP-IDF的环境,可以看官方文档中的Get Started一章,
https://esp-idf.readthedocs.io/en/latest/get-started/index.html
这里有最新的最全的配置步骤,这些环境配置步骤包括:
1、准备编译的PC(windows/mac/linux接口),准备开发板和USB连接线。
2、配置交叉编译工具链。
3、从github中下载esp-idf。
4、安装和配置编辑开发环境,官网上推荐Eclipse,可以集成GDB调试。这一步是可选的,我自己没有用这种方式。
只要按照文档的步骤,基本上都不会有问题。
这时候就可以进行最有意思的工作,开发编译应用程序并且试验一下。这大概可以总结为四步:
1、配置项目,编写代码。
我们一把都会从一个例子开始,esp32代码中例子还是很丰富的。
2、编译
3、烧写
4、Monitor和Debug程序的运行。
我们通常使用串口的输出来进行Debug,就是使用最Low的打印来Debug。如果程序Bug不太好确定,也可用JTAG和GDB单步调试,开发板默认是支持JTAG的,通常自己项目的板子不一定支持这个。