ESP32-Ethernet-Kit V1.0 入门指南

[English]

本指南介绍了如何使用 ESP32-Ethernet-Kit 开发板以及配置相关功能。

ESP32-Ethernet-Kit 是一款以太网转 Wi-Fi 开发板,可为以太网设备赋予 Wi-Fi 连接功能。为了提供更灵活的电源选项,ESP32-Ethernet-Kit 也同时支持以太网供电 (PoE)。

准备工作

您可以跳过介绍部分,直接前往 应用程序开发 章节。

概述

ESP32-Ethernet-Kit 是一款来自 乐鑫 的开发板,由以太网子板(A 板)和 PoE 子板(B 板)两部分组成。其中 以太网子板(A 板) 贴蓝牙 / Wi-Fi 双模 ESP32-WROVER-B 模组和单端口 10/100 快速以太网收发器 (PHY) IP101GRI。PoE 子板(B 板) 提供以太网供电功能。ESP32-Ethernet-Kit 的 A 板可在不连接 B 板的情况下独立工作。

ESP32-Ethernet-Kit V1.0

ESP32-Ethernet-Kit V1.0

为了实现程序下载和监控,A 板还集成了一款先进多协议 USB 桥接器(FTDI FT2232HL 芯片),进而允许开发人员直接通过 USB 接口,使用 JTAG 对 ESP32 进行调试,无需额外的 JTAG 调试器。

功能概述

ESP32-Ethernet-Kit 开发板的主要组件和连接方式见下。

ESP32-Ethernet-Kit 功能框图(点击放大)

ESP32-Ethernet-Kit 功能框图(点击放大)

功能说明

ESP32-Ethernet-Kit 开发板的主要组件、接口及控制方式见下。

以太网子板(A 板)

ESP32-Ethernet-Kit - 以太网子板(A 板)布局

ESP32-Ethernet-Kit - 以太网子板(A 板)布局(点击放大)

下表将从图片右上角开始,以顺时针顺序介绍图中的主要组件。

主要组件

基本介绍

ESP32-WROVER-B 模组

这款 ESP32 模组内置 64-Mbit PSRAM,可提供灵活的额外存储空间和数据处理能力。

GPIO Header 2

由 5 个未引出通孔组成,可连接至 ESP32 的部分 GPIO。具体介绍,请见 GPIO Header 2

流控

跳线帽,可接入开发板信号。具体介绍,请见 流控

功能选择开关

DIP 开关,可配置 ESP32 部分 GPIO 的功能。具体介绍,请见 功能选择开关

Tx/Rx LED

2 个 LED,可显示 UART 传输的状态。

GPIO Header 3

可连接至 ESP32 的部分 GPIO,根据 功能选择开关 的位置有不同功能。

FT2232

FT2232 多协议 USB 转串口桥接器。开发人员可通过 USB 接口对 FT2232 芯片进行控制和编程,与 ESP32 建立连接。FT2232 芯片可在通道 A 提供 USB-to-JTAG 接口功能,并在通道 B 提供 USB-to-Serial 接口功能,便利开发人员的应用开发与调试。见 ESP32-Ethernet-Kit V1.0 以太网子板(A 板)原理图

USB 端口

USB 接口。可用作开发板的供电电源,或连接 PC 和开发板的通信接口。

电源开关

电源开关。拨向 Boot 按键一侧,开发板上电;拨离 Boot 按键一侧,开发板掉电。

5V Input

5V 电源接口建议仅在开发板自动运行(未连接 PC)时使用。仅用于全负荷工作下的后备电源。

5V Power On LED

当开发板通电后(USB 或外部 5V 供电),该红色指示灯将亮起。

DC/DC 转换器

直流 5 V 转 3.3 V,输出电流高达 2 A。

B 板连接器

1 对 2 针排针,用于连接 PoE 子板(B 板)

IP101GRI (PHY)

物理层 (PHY) 单端口10/100 快速以太网收发器 IP101GRI ,允许开发人员实现与以太网线缆的物理层连接。PHY 与 ESP32 通过简化媒体独立接口 (RMII) 实现连接。RMII 是 媒体独立接口 (MII) 的简化版本。PHY 可在 10/100 Mbps 速率下支持 IEEE 802.3 / 802.3u 标准。

RJ45 端口

以太网数据传输断口。

网络变压器

网络变压器属于以太网物理层的一部分,可保护电路免受故障和电压瞬变影响,包括防止收发器芯片和线缆之间产生共模信号。同时它也可以在收发器与以太网设备之间提供电流隔绝。

Link/Activity LED

2 个 LED(绿色和红色),可分别显示 PHY 处于 “Link” 状态或 “Activity” 状态。

BOOT 按键

下载按键。按下 BOOT 键并保持,同时按一下 EN 键(此时不要松开 BOOT 键)进入“固件下载”模式,通过串口下载固件。

CH_PU 按键

复位按键。

GPIO Header 1

由 6 个未引出通孔组成,可连接至 ESP32 的备用 GPIO。具体介绍,请见 GPIO Header 1

PoE 子板(B 板)

PoE 子板通过以太网电缆传输电能 (PoE),为以太网子板(A 板)提供电源。PoE 子板(B 板)的主要组件见 功能概述 中的功能框图。

PoE 子板(B 板)具有以下特性:

  • 支持 IEEE 802.3at

  • 电源输出:5 V,1.4 A

如需使用 PoE 功能,请用以太网线缆将以太网子板(A 板)上的 RJ45 端口 连接至 PoE 的交换机。太网子板(A 板)检测到来自 PoE 子板(B 板)的 5 V 供电后,将从 USB 供电自动切换至 PoE 供电。

ESP32-Ethernet-Kit -  PoE 子板(B 板)

ESP32-Ethernet-Kit - PoE 子板(B 板)布局(点击放大)

主要组件

基本介绍

A 板连接器

1 个 4 针排母,用于将 B 板连接至 以太网子板(A 板)

外部电源终端

PoE 子板(B 板)备用电源。

设置选项

本节介绍用于 ESP32-Ethernet-Kit 开发板的硬件配置选项。

功能选择开关

用户可使用 功能选择开关 配置特定 GPIO 管脚的功能。

DIP SW

GPIO 管脚

管脚功能( DIP SW 开启状态)

GPIO14

连接至 FT2232,提供 JTAG 功能

GPIO12

连接至 FT2232,提供 JTAG 功能

GPIO13

连接至 FT2232,提供 JTAG 功能

GPIO15

连接至 FT2232,提供 JTAG 功能

GPIO4

连接至 FT2232,提供 JTAG 功能

GPIO2

连接至板上 25 MHz 晶振

GPIO5

连接至 IP101GRI 的 RESET_N 输入

n/a

用户还可以关闭 DIP DW,将部分 GPIO 用于其他用途。

流控

2 x 2 跳线连接器,可用于 UART 流控功能。

.

信号

备注

MTDO

GPIO13,见 功能选择开关

MTCK

GPIO15,见 功能选择开关

RTS

FT2232 的 RTS 信号

CTS

FT2232 的 CTS 信号

GPIO 分配

本节介绍了 ESP32-Ethernet-Kit 开发板特定接口或功能的 GPIO 分配情况。

IP101GRI (PHY) 接口

ESP32 (MAC) 与 IP101GRI (PHY) 的管脚对应关系见下:

.

ESP32 管脚 (MAC)

IP101GRI (PHY)

RMII 接口

GPIO21

TX_EN

GPIO19

TXD[0]

GPIO22

TXD[1]

GPIO25

RXD[0]

GPIO26

RXD[1]

GPIO27

CRS_DV

GPIO0

REF_CLK

串行管理接口

8

GPIO23

MDC

9

GPIO18

MDIO

PHY 复位

10

GPIO5

Reset_N

注解

除了 REF_CLK 之外,RMII 接口 下的所有管脚分配都是固定的,不能通过 IOMUX 或 GPIO 矩阵进行更改。

GPIO Header 1

本连接器包括 ESP32-Ethernet-Kit 开发板上部分不用做他用的 GPIO。

.

ESP32 管脚

GPIO32

GPIO33

GPIO34

GPIO35

GPIO36

GPIO39

GPIO Header 2

本连接器包括具有特定 RMII 功能的 GPIO(GPIO2 除外)。根据具体情况,部分以太网应用程序可能需要使用此功能。

.

ESP32 管脚

RMII 功能

说明

GPIO17

EMAC_CLK_180

见说明 1。

GPIO16

EMAC_CLK_OUT

见说明 1。

GPIO4

EMAC_TX_ER

GPIO2

n/a

见说明 2。

GPIO5

EMAC_RX_CLK

见说明 2。

注解

  1. ESP32 芯片的 GPIO16 和 GPIO17 管脚没有引出至 ESP32-WROVER-B 模组的管脚,因此无法使用。如需使用 ESP32 的 GP1016 和 GPIO17 管脚,建议更换其他不含 SPIRAM 的模组,比如 ESP32-WROOM-32D 或 ESP32-SOLO-1。

  2. 具体功能取决与 功能选择开关 的设置。

GPIO Header 3

本连接器中 GPIO 的功能取决与 功能选择开关 的设置。

.

ESP32 管脚

GPIO15

GPIO13

GPIO12

GPIO14

GND

3V3

GPIO 管脚分配

ESP32-WROVER-B

IP101GRI

UART

JTAG

GPIO

说明

S_VP

IO36

S_VN

IO39

IO34

IO34

IO35

IO35

IO32

IO32

IO33

IO33

IO25

RXD[0]

IO26

RXD[1]

IO27

CRS_DV

IO14

TMS

IO14

IO12

TDI

IO12

IO13

RTS

TCK

IO13

IO15

CTS

TDO

IO15

IO2

IO2

见下方说明 1 和说明 3。

IO0

REF_CLK

见下方说明 2 和说明 3。

IO4

nTRST

IO4

IO16

IO16 (NC)

见下方说明 4。

IO17

IO17 (NC)

见下方说明 4。

IO5

Reset_N

IO5

IO18

MDIO

IO19

TXD[0]

IO21

TX_EN

RXD0

RXD

TXD0

TXD

IO22

TXD[1]

IO23

MDC

注解

  1. GPIO2 用于使能 PHY 的外部振荡器。

  2. GPIO0 用于为 PHY 提供 50 MHz 基准时钟源。为了防止传输线路延迟对时钟相位带来的影响,该时钟信号将首先被反相,而后提供给 PHY。

  3. 为防止 PHY 端 GPIO0 的上电状态受到时钟输出的影响,PHY 的外部晶振将在 ESP32 上电后通过 GPIO2 使能。

  4. ESP32 芯片的 GPIO16 和 GPIO17 管脚没有引出至 ESP32-WROVER-B 模组的管脚,因此无法使用。如需使用 ESP32 的 GP1016 和 GPIO17 管脚,建议更换其他不含 SPIRAM 的模组,比如 ESP32-WROOM-32D 或 ESP32-SOLO-1。

应用程序开发

ESP32-Ethernet-Kit 上电前,请首先确认开发板完好无损。

初始设置

  1. 首先,请将 以太网子板(A 板) 上的所有开关均拨至 ON 状态,即使 功能选择开关 处于默认状态。

  2. 为了方便应用程序的下载和测试,此时请不要在开发板安装任何条线帽,也不要为开发板接入任何信号。

  3. 此时可以连接 PoE 子板(B 板),但不要向 B 板连接任何外部电源。

  4. 使用 USB 数据线将 以太网子板(A 板) 连接至 PC。

  5. 电源开关 从 GND 拨至 5V0 一侧。此时,5V Power On LED 应点亮。

正式开始开发

现在,请前往 快速入门 中的 详细安装步骤 章节,查看如何设置开发环境,并尝试将示例项目烧录至您的开发板。

如需使用较早 GNU Make 编译系统,则请参考 详细安装步骤 章节。

请务必在进入下一步前,确保您已完成上述所有步骤。

配置与加载以太网示例

在完成开发环境设置和开发板测试后,您可以配置并烧录 ethernet/ethernet 示例。本示例专门用于测试以太网功能,支持不同 PHY,包括 ESP32-Ethernet-Kit V1.0 开发板 使用的 IP101GRI