Category

Aktivering af Ethernet på ESP32

ESP32 er den nyeste og største Wonderchip fra Espressif. Det er en 32-bit, dual-core chip med WiFi, Bluetooth og tonsvis af periferiudstyr som Can og Ethernet. For de fleste af disse eksterne enheder har Espressif allerede et par stykker af eksempelkode, men [Frank Sautter] kunne ikke lide Ethernet-implementeringen. Koden ‘Stock’ kræver en TLK110 Ethernet Phy, men det er en dyr chip, når de købes i mængde en. En bedre chip ville være LAN8720, så [Frank] bygget et bord for at aktivere Ethernet på ESP32 med denne chip.

ESP32 har kun brug for et par komponenter til at lede den til et Ethernet-netværk. Bare et par modstande, kondensatorer og en RJ45 Jack vil tage sig af det meste af arbejdet, men fordi han tager Ethernet ‘Shield’ Route, skal han tilføje sin egen Ethernet Phy. Waveshare LAN8720 er chippen til dette, men der er et problem med PIN-konfigurationen af ​​ESP32. GPIO0 på ESP32 har to funktioner – den første trækker det lavt under opstart til seriel programmering, og det andet er urindgangen til EMAC-funktionsblokken. Nogle bit af kredsløb skal udformes for at tillade begge forhold at aktivere Ethernet på ESP32.

[Frank] s løsning er at tilføje et par pull-up og pull-down modstande til en breakout board, og brug en ubrugt GPIO pin til at skifte GPIO0 høj under opstart, men tillader en krystal at gribe det lidt senere. Det er en hack, bestemt, men det giver mulighed for nogle meget billigere chips, der skal bruges til at give ESP32 Ethernet.