cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with uint64_t and EXTI Callback function

herbert
Associate III
Posted on May 11, 2016 at 15:43

Hello,

I use the HAL EXTI callback function on an STM32F411 and have made the following strange experience:

When changing data types from float to uint64_t for Efficiency in another callback function (actually from DMA), my EXTI interrupts suddenly stop working. The debugger shows that the EXTI int is pending but the callback function gets not called any more.

Does anybody here have any ideas what is going on here or probably have similar experiences?

regards

Herbert
11 REPLIES 11
knielsen
Associate II
Posted on May 12, 2016 at 16:44

You probably have a bug in your code that causes random failures. For example stack overrun or buffer overrun or other similar issues. And the uint64_t usage causes the compiler to generate sufficiently different code that it makes the bug trigger a failure.

Posted on May 12, 2016 at 16:58

Is the stack sufficiently large for what you are doing?

Have you instrumented the IRQ Handler so we can determine if that is entering or not?

Have you determined if the system is faulting?

Is everything else functioning? If you stop in the debugger where is it?

Consider presenting your problem in a manner that can be reviewed.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..