cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeMX + lwIP + DP83848

vladsol2009
Associate II
Posted on January 04, 2018 at 21:46

Hi.

I have a project generated using stm32cubemx.

STM32F207@100MHz

lwIP, RMII, 50MHz MCO out.

Static IP.

ARP, ICMP modules is enabled.

After starting the board i see (with wireshark) one Gratuitous ARP message from board.

Nothing else

Any responses on ARP requests, ping, etc..

In main(), from UM1713 (Developing applications on STM32Cube with LwIP TCP/IP stack )

I have something like these:

 HAL_Init();
 /* USER CODE BEGIN Init */
 /* USER CODE END Init */
 /* Configure the system clock */
 SystemClock_Config();
 /* USER CODE BEGIN SysInit */
 /* USER CODE END SysInit */
 /* Initialize all configured peripherals */
 MX_GPIO_Init();
 MX_LWIP_Init(); 
 while (1)
 {
 /* USER CODE END WHILE */
 /* USER CODE BEGIN 3 */
 ethernetif_input(&gnetif);
 sys_check_timeouts();
 }
 /* USER CODE END 3 */
}

But, in function HAL_ETH_GetReceivedFrame()

from stm32f2xx_hal_eth.c condition if(((heth->RxDesc->Status & ETH_DMARXDESC_LS) != (uint32_t)RESET)) is always false (so,

HAL_ETH_GetReceivedFrame

returningHAL_ERROR).

At this point,heth->RxDesc->Status is always 0x80000000 and not changing.

0 REPLIES 0