Good day,
I'm developing an application on a board with the STM32F746 using the emWin library from ST (version 5.32).
Lately, probably due to a bug in the firmware, the board freeze and the J-link miss the communication without entering in the hard fault handler.
The j-link log is in the attached file JLINK1.txt.
To restart the system I need to reconnect and sometimes it is necessary to power-off/on the board because the j-link is unable to reconnect (see file JLINK2.txt).
Could indicate what are the conditions that can lead to a loss of connection as well as lack of power?
Actually I use the MPU configured as follow:
Thank You very much in advance.
Simone
I'm developing an application on a board with the STM32F746 using the emWin library from ST (version 5.32).
Lately, probably due to a bug in the firmware, the board freeze and the J-link miss the communication without entering in the hard fault handler.
The j-link log is in the attached file JLINK1.txt.
To restart the system I need to reconnect and sometimes it is necessary to power-off/on the board because the j-link is unable to reconnect (see file JLINK2.txt).
Could indicate what are the conditions that can lead to a loss of connection as well as lack of power?
Actually I use the MPU configured as follow:
Source Code
- static void MPU_Config (void) { MPU_Region_InitTypeDef MPU_InitStruct;
- /* Disable the MPU */ HAL_MPU_Disable();
- /* Configure the MPU attributes for SDRAM */ MPU_InitStruct.Enable = MPU_REGION_ENABLE; MPU_InitStruct.BaseAddress = 0xC0000000; MPU_InitStruct.Size = MPU_REGION_SIZE_16MB; MPU_InitStruct.AccessPermission = MPU_REGION_FULL_ACCESS; MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE; MPU_InitStruct.IsCacheable = MPU_ACCESS_NOT_CACHEABLE; MPU_InitStruct.IsShareable = MPU_ACCESS_NOT_SHAREABLE; MPU_InitStruct.Number = MPU_REGION_NUMBER0; MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL1; MPU_InitStruct.SubRegionDisable = 0x00; MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_DISABLE;
- HAL_MPU_ConfigRegion(&MPU_InitStruct);
- /* Configure the MPU attributes for FLASH MEMORY */ MPU_InitStruct.Enable = MPU_REGION_ENABLE; MPU_InitStruct.BaseAddress = 0x08000000; MPU_InitStruct.Size = MPU_REGION_SIZE_512KB; MPU_InitStruct.AccessPermission = MPU_REGION_FULL_ACCESS; MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE; MPU_InitStruct.IsCacheable = MPU_ACCESS_CACHEABLE; MPU_InitStruct.IsShareable = MPU_ACCESS_NOT_SHAREABLE; MPU_InitStruct.Number = MPU_REGION_NUMBER1; MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL0; MPU_InitStruct.SubRegionDisable = 0x00; MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_ENABLE;
- HAL_MPU_ConfigRegion(&MPU_InitStruct); /* Configure the MPU attributes for internal SRAM2 (16k for DMA transfers)*/ MPU_InitStruct.Enable = MPU_REGION_ENABLE; MPU_InitStruct.BaseAddress = 0x2004C000; MPU_InitStruct.Size = MPU_REGION_SIZE_16KB; MPU_InitStruct.AccessPermission = MPU_REGION_FULL_ACCESS; MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE; MPU_InitStruct.IsCacheable = MPU_ACCESS_NOT_CACHEABLE; MPU_InitStruct.IsShareable = MPU_ACCESS_SHAREABLE; MPU_InitStruct.Number = MPU_REGION_NUMBER2; MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL1; MPU_InitStruct.SubRegionDisable = 0x00; MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_DISABLE;
- HAL_MPU_ConfigRegion(&MPU_InitStruct);
- /* Enable the MPU */ HAL_MPU_Enable(MPU_PRIVILEGED_DEFAULT);}
Thank You very much in advance.
Simone