66 ESP32 ethernet\basic实验记录

ESP32以太网(ETH)环境和参数配置,基于内部mac和外部PHY(LAN8720A) 基于ESP32的以太网配置问题网上比较杂,并且对开发板针对性较强,本文旨在解决配置ESP32的以太网(ETH)问题。小编为此花费了大量精力,希望给大家避坑 阅读详情

1.引言

        最近买了一块esp32以太网开发板(如下图示),想测试esp32以太网功能,但新人上手肯定会遇到一些问题,特此记录。

2.实验 

        我的编译环境是:idf,而非arduino。使用的SDK是4.4版本。

        选择的demo是esp-idf-v4.4\examples\ethernet\basic。遇到的问题是,编译配置esp32的ethernet\basic demo后,烧录至设备,esp32上电不断重启,打印如下log。

I (254) cpu_start: Pro cpu up.
I (255) cpu_start: Starting app cpu, entry point is 0x400810b4
I (241) cpu_start: App cpu up.
I (269) cpu_start: Pro cpu start user code
I (269) cpu_start: cpu freq: 160000000
I (269) cpu_start: Application information:
I (273) cpu_start: Project name:     ethernet_basic
I (279) cpu_start: App version:      v4.4-dirty
I (284) cpu_start: Compile time:     Apr  7 2022 17:19:05
I (290) cpu_start: ELF file SHA256:  5753ad8f9d190cda...
I (296) cpu_start: ESP-IDF:          v4.4-dirty
I (302) heap_init: Initializing. RAM available for dynamic allocation:
I (309) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (315) heap_init: At 3FFB3BF8 len 0002C408 (177 KiB): DRAM
I (321) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (327) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (334) heap_init: At 4008B948 len 000146B8 (81 KiB): IRAM
I (341) spi_flash: detected chip: generic
I (345) spi_flash: flash io: dio
I (350) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
E (459) esp.emac: emac_esp32_init(355): reset timeout
E (459) esp_eth: esp_eth_driver_install(222): init mac failed
ESP_ERROR_CHECK failed: esp_err_t 0x107 (ESP_ERR_TIMEOUT) at 0x4008548c
file: "../main/ethernet_example_main.c" line 122
func: app_main
expression: esp_eth_driver_install(&config, &eth_handle)

abort() was called at PC 0x4008548f on core 0


Backtrace:0x40081926:0x3ffb6fe00x40085499:0x3ffb7000 0x4008a63a:0x3ffb7020 0x4008548f:0x3ffb7090 0x400d6361:0x3ffb70b0 0x400ffd11:0x3ffb7140 0x400880e5:0x3ffb7160 



        当然我肯定知道肯定要改一下代码或配置什么的,所以我就根据卖家提供的arduino代码对demo重新进行配置,如下图示。

        配置重新编译结果还是一样,期间因为我接的网线是带poe的线,网线有供电,导致开发板电流达到1A,急剧发热。然后按卖家提供资料的配置还是不行,所以以为是芯片坏了,烧掉了。

        后面看了下面官方的介绍,才知道自己少配置了。Ethernet - ESP32 - — ESP-IDF Programming Guide latest documentation

         下面的配置比较关键,是因为LAN8720A所使用的以太网电路没有外部晶振提供时钟的,如下图的第三种。

        LAN8720A所处于的模式是REF_CLK_IN模式,所以需要由esp32输出来提供50MHz时钟驱动网络芯片,因此配置完下面后,重新烧录代码就成功运行了。

        经过上述配置,成功运行以太网demo。

I (240) boot: Disabling RNG early entropy source...
I (254) cpu_start: Pro cpu up.
I (254) cpu_start: Starting app cpu, entry point is 0x400810b4
I (0) cpu_start: App cpu up.
I (268) cpu_start: Pro cpu start user code
I (268) cpu_start: cpu freq: 160000000
I (268) cpu_start: Application information:
I (273) cpu_start: Project name:     ethernet_basic
I (278) cpu_start: App version:      v4.4-dirty
I (283) cpu_start: Compile time:     Apr  7 2022 18:19:57
I (289) cpu_start: ELF file SHA256:  f076945ba85f01ea...
I (295) cpu_start: ESP-IDF:          v4.4-dirty
I (301) heap_init: Initializing. RAM available for dynamic allocation:
I (308) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (314) heap_init: At 3FFB3BF8 len 0002C408 (177 KiB): DRAM
I (320) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (327) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (333) heap_init: At 4008B948 len 000146B8 (81 KiB): IRAM
I (340) spi_flash: detected chip: generic
I (344) spi_flash: flash io: dio
I (349) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (369) system_api: Base MAC address is not set
I (369) system_api: read default base MAC address from EFUSE
I (389) esp_eth.netif.netif_glue: 78:e3:6d:1b:24:af
I (389) esp_eth.netif.netif_glue: ethernet attached to netif
I (4389) eth_example: Ethernet Started
I (6389) eth_example: Ethernet Link Up
I (6389) eth_example: Ethernet HW Addr 78:e3:6d:1b:24:af
I (8859) esp_netif_handlers: eth ip: 192.168.0.213, mask: 255.255.255.0, gw: 192.168.0.1
I (8859) eth_example: Ethernet Got IP Address
I (8859) eth_example: ~~~~~~~~~~~
I (8859) eth_example: ETHIP:192.168.0.213
I (8869) eth_example: ETHMASK:255.255.255.0
I (8869) eth_example: ETHGW:192.168.0.1
I (8879) eth_example: ~~~~~~~~~~~

over!

使用Aruino Ethernet使ESP32具有以太网通讯能力 ESP32使用W5500建立以太网通讯 阅读详情

相关推荐

ESP32以太网通信实战指南

ESP32以太网通信实现摘要: ESP32通过SPI接口外接ENC28J60以太网模块实现10Mbps通信,需连接SCK/MOSI/MISO/CS等引脚(兼容3.3V电平)。基于ESP-IDF框架配置: 硬件:ESP32-WROOM-32与ENC28J60模块通过SPI连接,注意避免5V供电; 软件:通过menuconfig启用SPI以太网组件,设置引脚参数与网络模式(DHCP/静态IP); 代码:初始化SPI总线、ENC28J60驱动,注册事件回调获取IP,并实现TCP客户端功能。 关键点:仅部分ESP3

Shylock_Mister的博客 2368

ESP32 单片机学习笔记 - 06 - (以太网)Ethernet转Wifi

ESP32 单片机学习笔记 - 05 - (以太网)Ethernet转Wifi 暂停了半个多月的学习,去调车了。现在课设开始了,赶紧回来把一开始的“以太网”目标学完。但是却发现,好像和自己的理解不太一样。 文章目录ESP32 单片机学习笔记 - 05 - (以太网)Ethernet转Wifi一、以太网基本示例 - Ethernet1.确定方案2.准备工作3. 例程解析二、以太网 到 Wi-Fi AP"路由器"1. 例程解析三、以太网 编程指南1. 基本以太网概念2. 配置 MAC 和 PHY3. 创建M

Lovely_him的博客 1万+

基于ESP32的IDF开发,以太网(ETH)例程解析(内置mac和外置phy)

基于乐鑫的IDE的demo开发,运用ESP32平台例程,从应用层解析以太网的使用方法

m0_45068979的博客 3006

ESP32以太网问题踩坑总结

ESP32以太网问题踩坑到稳定

weixin_39346790的博客 6800

ESP32 开发笔记(三)源码示例 0、Hello Bug ESP_LOGX与printf

编程第一课必写helloworld,因为 The C Programming Language 中使用它做为第一个演示程序,非常著名,所以后来的程序员在学习编程或进行设备调试时延续了这一习惯,入行久了才会明白,一入编程深似海,从此头发是路人,先不要和世界问好了,以后陪伴你更多的是Bug。 第一个示例先向Bug问好 printf:一个ISR(中断服务处理,Interrupt Service Routines)应该避免调用不可重入函数。一些标准库函数是不可重入的,如经常实现的malloc和printf。因为

cnicfhnui的博客 2万+

ESP32——基于LAN8720A的以太网通讯测试

ESP32基于LAN8720A的以太网通讯测试

tsliuch的专栏 5056

【ESP32学习笔记】#通用篇#(4)错误代码参考

ESP_FAIL(-1):指示故障的通用esp错误代码 ESP_OK(0):表示成功(无错误)的esp\u err\t值 ESP_ERR_NO_MEM(0x101):内存不足 ESP_ERR_INVALID_ARG(0x102):参数无效 ESP_ERR_INVALID_STATE(0x103):无效状态 ESP_ERR_INVALID_SIZE(0x104):大小无效 ESP_ERR_NOT_FOUND(0x105):未找到请求的资源 ESP_ERR_NOT_SUPPORTED(0x106)

丨晋丨 8552

esp32_ethernet_test:我在ESP32上的以太网测试(不完整!)

esp32_ethernet_test 我在ESP32上的以太网测试(不完整!) 注意:复制并进行全新安装时,请确保已选择以太网时钟作为GPIO16输出 │ │ │ Select external (input on GPIO0) or internal (output on GPIO0, GPIO16 o │ │ │ │ │

使用Arduino开发ESP32(06):Ethernet的使用(基于LAN8720)

文章目录目的基本说明接线定义使用步骤常用方法说明使用演示数据通讯事件响应其他说明PHY地址时钟通讯应用总结 目的 ESP32除了可以使用无线网络外还可以通过外接PHY模块来使用有线网络(Ethernet:以太网),本篇将介绍相关内容。 基本说明 本篇中使用常用的PHY芯片LAN8720的模块来来进行有线网络使用演示。 接线定义 下面是ESP32与LAN8720间RMII PHY的连接定义,用于以...

Naisu的各种笔记 2万+

ESP32-POE:具有100Mb以太网和802.3以太网供电(POE)的ESP32 IoT开发板

ESP32-POE ESP32-PoE是一款具有以太网供电功能的IoT WIFI / BLE /以太网开发板。 Si3402-B芯片符合IEEE 802.3,包括预标准(旧式)PoE支持。 物联网的完美解决方案,可以利用通过以太网电缆供电的传感器和执行器进行扩展。 在深度睡眠模式下,功耗不到100uA的低功耗设计! 产品页面: : 执照 硬件是根据Apache 2.0许可发布的 软件是根据GPL3许可发布的 文档在CC BY-SA 3.0下发布

产业园区如何高效对接企业技术需求与高校科研成果?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

ESP32-Ethernet-04

ESP32-PICO-MINI-02 引脚对应TX1GPIO22TX-ENGPIO21RX0GPIO25GPIO0TX0GPIO19RX1GPIO26CRSGPIO27MDCGPIO20MDIOGPIO8GNDGNDVCC3.3V。

zq4132的专栏 1017

STM32F103单片机驱动TM1637数码管显示模块

最近项目中需要用到数码管显示,于是买了一个TM1637芯片驱动的四位数码显示模块,现将调试过程记录一下,方便以后参考。 使用的单片机是STM32F103C8T6最小系统 使用的数码管模块是TM1637四位数码管显示模块 实际运行效果 下面先看一下TM1637和数码管连接的具体线路图 实际使用的模块没有带按键,只用了4个数码管,模块和单片机连接只需要4根线VCC、GND、CLK、DIO。芯片和单片机通信使用的是I2C总线,下面就来说一下如何...

HXYDJ的博客 1万+

单片机使用有线以太网联网的解决方案

1. 有MII/RMII接口、且内置MAC的单片机,如 STM32F407、STM32F107 方案:外置PHY,且内部程序要运行TCP/IP协议栈 PHY芯片推荐列表:LAN8720、LAN8742、DP83848。 2. 无MII/RMII接口、无内置MAC 的单片机,如 STM32F103 方案1:外置TCP/IP协议栈,外置PHY W5500系列(80M-SPI接口,更高通信速度可以使用并行总线的W5100 / W5300) CH9121(串口AT指令,速率300bps...

Mark_md的博客 6514

Ubuntu断网环境下的系统更新:apt-offline保姆级教程(附常见问题排查)

本文详细介绍了在Ubuntu断网环境下使用apt-offline进行系统更新的完整教程,包括环境准备、签名文件生成、数据传输方案对比及常见问题排查。特别适用于企业级开发环境或安全敏感场景,帮助运维人员高效完成离线系统更新,确保系统安全与稳定。

weixin_29214691的博客 360

YoloV8改进策略:基于双层路由注意力的视觉Transformer提升YoloV8的检测能力

本文使用2023年最新提出的BiFormer,实现对YoloV8的改进。目前,BiFormer还有在显存占用,还有性能存在问题。我们先试试效果,期待作者在Pytoch上早日实现优化。论文链接:https://arxiv.org/abs/2303.08810代码链接:https://github.com/rayleizhu/BiFormer作为视觉transformer的核心构建模块,注意力是捕捉长程依赖关系的强大工具。

m0_47867638的博客 2845

ESP 以太网应用资料整理

可选用 ESP32-Ethernet-Kit 开发板 进行测试。 ESP32-Ethernet-Kit 开发板默认使用的 PHY 芯片是 IP101 ,可参考 ESP32-Ethernet-Kit V1.2 入门指南 说明 ESP-IDF 目前支持的 PHY 芯片有 LAN8720, IP101, DP83848 、KSZ8041 和 RTL8201 ,可参考 例程 ,在 menuconfig 配置中可配置为其他型号,如下: menuconfig -> Example Configur..

ESP 技术分享,推动万物互联 5304

BAQ压缩原理

BAQ——Block Adaptive Quantization,块自适应量化,一种数据压缩算法。

2872

快速指南 :ESP-IDF 自定义以太网 PHY 驱动程序

本文向您介绍并演示了基于 ESP-IDF 创建一个新的 PHY 驱动程序是多么简单!

乐鑫 Espressif 1773

thinkphp6/8 - 实现评论区发表评论、回复评论功能数据库表设计与整个逻辑思路过程分析,tp5 评论盖楼等功能(附带源码稍加改造即可使用)

tp5评论区数据库表设计,tp5发表回复评论功能设计,thinkphp5如何做评论功能,tp5 php评论区实现发表回复删除评论,tp5评论区盖楼源码及数据表设计思路,thinkphp评论功能详细教程,thinkphp实现评论与回复功能,thinkphp实现文章评论和回复评论功能,tp5实现评论回复功能,thinkphp如何实现评论区,tp5网站PC移动端h5怎么做评论区发表留言及回复功能,thinkphp实现评论区插件,thinkphp评论区相互发表回复功能详细教程,thinkphp有没有评论区的组件插件

✅ 精选推荐文章 3159

嵌入式面经(2)——央企篇

前文得知我只投央企,不投国企,有面试的央企大致有三类:感兴趣的同学可以和我私聊军工央企相关(航空航天,兵器兵工)制造央企相关(三桶油,装备制造)金融运维相关(信通集团,国有银行)接下来我将对我有的面试中询问的面经进行总结。

coldmood77的博客 468

(Arduino)使用ESP32 + W5500+AIR780E实现 Ethernet Modbus转Mqtt

硬件配置主控MCU: ESP32-WROOM-32Ethernet 模块: W55004G模块: Air780E电源模块: 输入:4.7-40 VDC 输出 5V开发环境MQTT服务器: MoisquitoModbus Tcp Slave 模拟器。

吴小满的天空 的博客 5095

影楼精修-肤色统一算法解析

本文介绍了影楼精修中肤色统一算法的实现方案,并以像素蛋糕软件为例进行详细分析。肤色统一旨在通过调整人像照片中皮肤区域的颜色,使其看起来更加均匀一致。像素蛋糕软件提供了AI肤色统一和传统肤色统一两种功能,分别适用于不同需求。传统肤色统一算法通过皮肤分割、人脸检测、亮度统一和颜色统一等步骤,实现了对皮肤区域的精细调整。文章还提供了亮度统一的核心代码,并对比了传统算法与AI算法的效果,指出AI算法在自然度和亮度矫正方面表现更优。整体而言,本文为影楼精修中的肤色统一提供了实用的技术参考。

Trent1985的专栏 2068

ESP32驱动LAN8720网卡

简介 ESP32 使用内置的 MAC 驱动外置的 PHY(LAN8720),软件和版本为 ESP-IDF-V4.3 连接ESP32和LAN8720 接线示意图如下图所示,其中GPIO17可不接 接线线序 以下引脚不能更改线序: GPIO RMII Signal ESP32 EMAC Function 0 REF_CLK EMAC_TX_CLK 21 TX_EN EMAC_TX_EN 19 TX0 EMAC_TXD0 22 TX1 EMAC_TXD1 25 RX0 E

荻夜的博客 1万+

在 FreeStyle SAP UI5 应用里优雅落地 Draft 草稿机制:用 DraftManager 封装 DraftController 的一套实战套路

SAP Fiori应用中,Draft草稿机制是解决业务中断、多人协作和长表单填写等痛点的核心能力。本文提出了一套针对FreeStyle SAP UI5应用的Draft管理方案,通过封装sap.ui.generic.app.transaction.DraftController为DraftManager服务类,将复杂的草稿操作逻辑集中管理。该方案实现了草稿的创建、激活、丢弃等核心功能,使控制器只需调用简单意图式API即可完成操作,同时解决了组件化架构下的上下文切换、统一错误处理等问题。文章还详细介绍了后端Dr

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2751

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

ESP32 和 LAN8720AI有线以太网联网问题

如图

Title404 7913

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: 65 STM32F0系列 串口DMA循环接收实验记录
下一篇: 67 ML302 mqtt对接onenet注意事项
Chasing_Chasing
博客等级 码龄10年 233粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值