Does this sound familiar to anyone, and does anyone have any ideas on where to start?
My code runs fine for hours without issues, but if I set one task to run continuously the code crashes within 15 seconds. (it varies from 1-20). The hard fault handler says that it is from the FreeRTOS code, but it varies which section. I realize I didn’t give much information, but I’m not sure where to start. Any advice would be great.
I’m using Version 6.1.1
It’s the default compiler for uVision 4 from Keil.
It’s on a STM32F207 (ArmCortex M3)
I just determined that if I comment out a section of code which contains snprintf and strncat’s the code runs without crashing. It appears that if a context switch happened during this code, the device would crash. I will investigate further, and let you know if I cannot figure it out.
for (i = 0; i < 8; i++) {
snprintf(m2String,M2STRING_LENGTH,"%X\t",gpi_ext_bytes_);
strncat(mString,m2String,MSTRING_LENGTH - strlen(mString));
}