ESP32 & ESP8266芯片对比以及ESP32芯片部分总结

#esp32 & esp8266

##功能框图

    ESP32的功能原理图
esp32 esp8266 esp32-s2 CPU 型号 低功耗Xtensa@LX6 32-bit 单/双核处理器 超低功耗 Tensilica L106 32-bit RISC处理器 Xtensa@LX7 32-bit LX7单核处理器  频率 高达240MHZ 160MHZ 高达240MHZ 性能 运算能力高达600MIPS 较弱 存储 片上 448kB的ROM,用于程序启动和内核功能调用 520KB片上SRAM 用户可用SRAM空间高度为50KB 320KB SRAM RTC快速存储器,为8KB的SRAM;RTC慢速存储器,为8KB的SRAM RTC快速存储器,为8KB的SRAM;RTC慢速存储器,为8KB的SRAM 1Kbit的eFuse 4Kbit的eFuse Wi-Fi 数据率高达150Mbps支持TCPIP协议 完全遵循802.11 b/g/n WiFi MAC协议栈 数据率高达72.2Mbps支持TCPIP协议 完全遵循802.11 b/g/n WiFi MAC协议栈 Bluetooth 支持蓝牙v4.2 BR/EDR和BLE标准提供 外设 UART 3个UART接口速度可达5Mbps即 UART0、UART1 和 UART2 2个UART串口速度可达5MBPS I2C 2个I2C接口 可用用软件编程模拟1个I2C接口口 SPI 4个SPI(有 3 组 SPI(SPI、HSPI 和 VSPI)接口) 1 个通用用从机/主机 SPI 和 1 个通用用从机 HSPI ADC 集成了 12-bit SAR ADC,共支持 18 个模拟通道输入 内置一个 10-bit 精度的 SAR ADC DAC 有 2 个 8-bit DAC 通道 GPIO 有 34 个 GPIO 管脚 有 17 个 GPIO 管脚 CAN ESP32的外围设备包含一个CAN控制器,支持CAN2.0B规范的标准帧格式(11位ID)和扩展帧格式(29位ID) 定时器 内置 4 个 64-bit 通用定时器,具有 16-bit 分频器和 64-bit 可自动重载的向上/向下计时器 PWM定时器,看门狗定时器 I2S 有 2 个标准 I2S 接口,2 个 I2S 接口都有专用的 DMA 控制器 有 1 个 I2S 输入入接口和 1 个 I2S 输出接口,支持链表 DMA PWM 脉冲宽度调制 (PWM)和LED PWM 有 4 个 PWM 输出接口 SD/SDIO/MMC ESP32 集成一个 SD/SDIO/MMC 主机控制器和用作 SDIO 总线上的从机 1 个从机 SDIO 接口 IR遥控接口 8 路 IR 收发器,支持不同波形标准 目前定义了了 1 个 IR 红外遥控接口,IR 红外遥控接口口由软件实现 硬件加速器 AES (FIPS PUB 197)、SHA (FIPS PUB 180-4)、RSA 和 ECC 等,还支持大数乘法、大数模乘等独立运算

详细资料可以看

1.ESP32采用两个哈佛结构Xtensa LX6 CPU 构成双核系统,两个 CPU 的地址映射呈对称结构,两个 CPU 的名称分别是“PRO_CPU”和“APP_CPU”。

2.地址映射结构

片上存储器分为 Internal ROM、Internal SRAM、RTC FAST Memory、RTC SLOW Memory 四个部分。DMA 功能的模块总共有 13 个。

ESP32 将 External Flash 与 External SRAM 作为片外存储器。

ESP32 共有 41 个外设模块,除了 PID Controller 以外,其余外设模块都可以被两个 CPU 用相同地址访问到。注意:PRO_CPU 和 APP_CPU 都只能访问自己的PID Controller,不能访问对方的 PID Controller。

3.中断矩阵

主要特点:

    接受 71 个外部中断源作为输入 为两个 CPU 分别生成 26 个外部中断(总共 52 个)作为输出 屏蔽 CPU 的 NMI 类型中断 查询外部中断源当前的中断状态

4.复位和时钟

系统提供三种级别的复位方式,分别是 CPU 复位,内核复位,系统复位。

    CPU 复位:只复位 CPU 的所有寄存器。 内核复位:除了 RTC,会把整个 digital 的寄存器全部复位,包括 CPU、所有外设和数字 GPIO。 系统复位:会复位整个芯片所有的寄存器,包括 RTC。

系统时钟:

系统时钟 系统时钟
经验分享 程序员 微信小程序 职场和发展