Hello,
I'm facing the problem with run modus of stm32f746 together with lpIP and LVGL. Can anybody say what can be wrong?
If I activate lwIP, then came that problem without debugger.
the main looks like this:
int main(void) { /* USER CODE BEGIN 1 */ SystemCoreClock = 200000000; SystemCoreClockUpdate(); // EventRecorderInitialize (EventRecordAll, 1); // initialize and start Event Recorder // EventRecorderStart(); /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ HAL_Init(); /* USER CODE BEGIN Init */ /* USER CODE END Init */ /* Configure the system clock */ SystemClock_Config(); /* USER CODE BEGIN SysInit */ //HAL_Delay(2000); /* USER CODE END SysInit */ /* Initialize all configured peripherals */ MX_GPIO_Init(); MX_FMC_Init(); MX_LTDC_Init(); MX_TIM3_Init(); MX_LWIP_Init(); /* USER CODE BEGIN 2 */ //HAL_Delay(2000); initTouchDisplay(); api_fadein_graphics(); // HAL_Delay(2000); // MX_LWIP_Init(); /* USER CODE END 2 */ /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { lv_timer_handler(); lv_tick_inc(HAL_GetTick() - lv_tick_get()); MX_LWIP_Process(); /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */ }
Perhaps the problem is in addresses, therefore I list the configuration (the LWIP_RAM_HEAP_POINTER was added manualy as user constrant in CubeMX, because is missing in STM32CubeMX Version 6.11.1):
// in ethernetif.c: __attribute__((at(0x2004fa00))) ETH_DMADescTypeDef DMARxDscrTab[ETH_RX_DESC_CNT]; /* Ethernet Rx DMA Descriptors */ __attribute__((at(0x2004f000))) ETH_DMADescTypeDef DMATxDscrTab[ETH_TX_DESC_CNT]; /* Ethernet Tx DMA Descriptors */ // in main.h: #define LWIP_RAM_HEAP_POINTER 0x20040000