Why can't I clear the SRAM_PEF bit?
Hi there,
I'm using the chip STM32G431CBY3 and here is a strange thing. After I start the TIM15 in interrupt mode and every time the interrupt enters, the NMI_Handler enters at the same time, by checking the register, I found that SRAM_PEF bit is set in SYSCFG_CFGR2. After several times of this, the system seems to stop working.
I have done things below by using the methods mentioned in knowledge article type 'How to use SRAM Parity in your application' :
- Enable SRAM parity check in STM32CubePrg, make CCMRAM erased when system resets;
- Initialize the SRAM in startup file;
- Clear the SRAM_PEF bit in NMI_Handler;
but that brings no effect.
By the way, I use CCMRAM to accelerate some functions, the CCMRAM is mapped at 0x10000000, when I remap it at 0x20005800, the problem above disappears and the code works right. I have checked the variables that DMA used, their run address are all at RAM not at CCMRAM, so I guess it's not about DMA access? If somebody knows the reason please tell me. Thanks.
