This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I have additional informations for that Point.
Here is the code which sets the default MPU Setting which is valid for every task:
prvMpuDisable();
prvMpuSetRegion(0, 0x00000000, portMPU_SIZE_4MB | portMPU_REGION_ENABLE, portMPU_REGION_READ_ONLY | portMPU_REGION_CACHEABLE_BUFFERABLE);
prvMpuSetRegion(1, 0x80000000, portMPU_SIZE_8MB | portMPU_REGION_ENABLE, portMPU_REGION_PRIVILEGED_READ_WRITE_USER_READ_ONLY | portMPU_REGION_CACHEABLE_BUFFERABLE);
prvMpuSetRegion(2, 0x08000000, portMPU_SIZE_256KB | portMPU_REGION_ENABLE, portMPU_REGION_PRIVILEGED_READ_WRITE_USER_READ_ONLY | portMPU_REGION_CACHEABLE_BUFFERABLE);
prvMpuSetRegion(3, 0xFC000000, portMPU_SIZE_64MB | portMPU_REGION_ENABLE, portMPU_REGION_PRIVILEGED_READ_WRITE_USER_READ_ONLY | portMPU_REGION_EXECUTE_NEVER | portMPU_REGION_DEVICE);
prvMpuSetRegion(11, 0xF0000000, portMPU_SIZE_8MB | portMPU_REGION_ENABLE, portMPU_REGION_PRIVILEGED_READ_WRITE | portMPU_REGION_EXECUTE_NEVER | portMPU_REGION_DEVICE);
prvMpuEnable();
If I exchange the settings for region 0 and 11 the software runs fine.
This can be the solution but I want to understand why the MPU behaves like this?
BR
Christian