🛠 Serveur web sur l'Ethernet du STM32H743ZI : démo LwIP officielle, RMII et errata

STM32H7 Nucleo-144 (modèle phare : NUCLEO-H743ZI) · avance · Schéma : IMG-stm32h7-nucleo-avance-1-stm32h743zi-ethernet-lwip.svg — Nucleo-144 STM32H743ZI avec câble Ethernet RJ45 branché, flèches vers les broches RMII (PA1, PA2, PA7, PB13, PC1, PC4, PC5, PG11, PG13), navigateur web affichant une page de télémétrie, flat vector style, étiquettes en français, fond blanc.

Qué vas a construir

El H743ZI incluye un MAC Ethernet IEEE-802.3-2002 con un conector RJ45 integrado — y ST ofrece una demostración lista para usar de la pila TCP/IP LwIP en Projects/NUCLEO-H743ZI/Applications/LwIP dentro de STM32CubeH7, documentada como punto de partida para un servidor web Ethernet. Este tutorial pone en marcha esa demostración como una página de telemetría en vivo, y luego cubre el conocimiento a nivel de pines y de erratas que necesitas cuando las cosas no funcionan correctamente.

Paso 1 — Abre la demostración oficial

  1. git clone --recursive https://github.com/STMicroelectronics/STM32CubeH7.git
  2. Abre Projects/NUCLEO-H743ZI/Applications/LwIP en STM32CubeIDE; compila y graba mediante el ST-LINK/V2-1 integrado.
  3. Conecta la placa a tu LAN; obtén la IP asignada desde la salida serie de la demostración (puerto COM virtual ST-LINK, 115200).

Paso 2 — Conecta la telemetría

Reemplaza el contenido estático de la página de la demostración con un valor ADC en vivo:

/* In the LwIP HTTP application's SSI handler (CubeH7 demo pattern): */
static int ssi_adc_handler(void *i, const char *tag, char *rs, ushort_t rs_max_len)
{
  uint32_t raw;
  HAL_ADC_Start(&hadc1);                    /* 3x 16-bit ADCs, up to 3.6 MSPS */
  HAL_ADC_PollForConversion(&hadc1, 10);
  raw = HAL_ADC_GetValue(&hadc1);
  return snprintf(rs, rs_max_len, "%lu", raw);
}
/* In your page template: <!--#adc_value--> gets replaced on every request. */

Paso 3 — Conoce tu mapa RMII

Las señales RMII están documentadas (documentación de la placa Zephyr) en PA1, PA2, PA7, PB13, PC1, PC4, PC5, PG11, PG13. Si vuelves a cablear algo cerca de esos pines morpho, Ethernet falla primero — revisa este mapa antes de depurar la pila.

Paso 4 — Erratas y casos límite

> NO VERIFICADO: elementos individuales de erratas — la capa de texto del PDF no pudo extraerse con los extractores disponibles durante la investigación.

Resultado esperado

El navegador muestra la página de la demostración; el campo <!--#adc_value--> cambia en vivo mientras giras un potenciómetro en A0 — un MCU de 480 MHz actuando como servidor HTTP sin SO más allá de LwIP.

Errores comunes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales