cancel
Showing results for 
Search instead for 
Did you mean: 

stm32 gpio callback

abeba.1
Associate II

hii

i have a stm32h753 nucleo board , witch have a user button connected to pc 13 , i am trying to implement printing on console when a button is pressed by using interrupted call back that is generated from the button press , i looked at the user manual of 753 and it says all gpio have external interrupt capabilities , i enabled the EXTI interrupt lines in the ioc project file .

and when i press the button nothing happens , i included my main file , and pictures from the nvic , what is am missing here ? in order to activate print by user button pressings.

i debugged the code and put a breakpoint in the EXTI INRUPPET HANDLER and the cpu doesn't even hit this breakpoint

and i also noticed in the gpio configuration section there is only input only mode and there is no external triggers modes when i scroll down the tab

5 REPLIES 5
Pavel A.
Evangelist III
FBL
ST Employee

Hello @abeba.1​,

Hope that @Pavel A.​  proposal solved your issue.

If not, and to understand why, have you checked are other interrupts at this point running successfully?

Could you please check in NVIC_ISERx, that the given interrupt is enabled.

 /* Enable and set EXTI lines 15 to 10 Interrupt to the lowest priority */
 
 HAL_NVIC_SetPriority(EXTI15_10_IRQn, 2, 0);
 
 HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.


I'm out of offce with limited access to my emails.
Happy New Year!
S.Ma
Principal

Interruptd and callbackd must be microseconds brief. So avoid uart transmit blocking function calls within.

hii Pavel , thanks for your reply , but when i create the project for the nucleo h753 board , when i open the nvic tab i see that the external interrupt have different numbers than 15 to 10 , and i can't understand where those numbers come from , i attached a pic from my ioc .

in all the examples i sow the EXTI line[15:10] interrupts , but in my project i see that numbers are different EXTI line[9:5] , and i suspect that i may be relayed to the problem that the NVIC is not working with PC13 , cause 13 is not in 9:5 range .

on top of that on the GPIO configuration section when i scroll down on pc13 i don't see a mode with rising falling edge on button press