以下是一些建议和可能的原因:
1. 检查硬件连接:确保ESP32与LAN8720模块之间的所有连接都正确无误,包括电源、时钟、数据和控制信号。
2. 检查晶振:您提到使用的是LAN8720模块上的50MHz晶振。请确保晶振工作正常,频率准确。
3. 检查GPIO0配置:您提到将nINT/REFCLKO引脚与GPIO0连接,并设置为Ethernet PHY Clock Mode (GPIO0 Input)。请确保GPIO0的配置正确,没有其他干扰。
4. 检查ESP-IDF版本:您使用的是esp-idf-release-v3.2版本。虽然这个版本应该是兼容的,但您可以尝试升级到最新版本的ESP-IDF,看看是否能解决问题。
5. 检查示例代码:请确保您使用的示例代码是针对ESP32和LAN8720模块的,没有其他不兼容的地方。
6. 检查错误日志:错误日志中的 "E (1301) emac: Reset EMAC Timeout" 表示EMAC(以太网媒体访问控制器)在重置过程中超时。这可能是由于硬件问题、固件问题或配置问题导致的。请仔细检查您的硬件和软件设置,确保一切正常。
以下是一些建议和可能的原因:
1. 检查硬件连接:确保ESP32与LAN8720模块之间的所有连接都正确无误,包括电源、时钟、数据和控制信号。
2. 检查晶振:您提到使用的是LAN8720模块上的50MHz晶振。请确保晶振工作正常,频率准确。
3. 检查GPIO0配置:您提到将nINT/REFCLKO引脚与GPIO0连接,并设置为Ethernet PHY Clock Mode (GPIO0 Input)。请确保GPIO0的配置正确,没有其他干扰。
4. 检查ESP-IDF版本:您使用的是esp-idf-release-v3.2版本。虽然这个版本应该是兼容的,但您可以尝试升级到最新版本的ESP-IDF,看看是否能解决问题。
5. 检查示例代码:请确保您使用的示例代码是针对ESP32和LAN8720模块的,没有其他不兼容的地方。
6. 检查错误日志:错误日志中的 "E (1301) emac: Reset EMAC Timeout" 表示EMAC(以太网媒体访问控制器)在重置过程中超时。这可能是由于硬件问题、固件问题或配置问题导致的。请仔细检查您的硬件和软件设置,确保一切正常。
举报