关于 USARTx_IRQHandler() 函数的调用问题
今天小编终于解决了一个困惑已久的问题,USARTx_IRQHandler() 中断服务函数是如何被调用的,曾以为它像 HAL 库开发那样是使用的回调函数那样被调用,找了半天,没有找到,学习视频中也没有提及过这个问题,使用溯源大法(即Go To Definition Of ‘xx’ 与 Go To Reference To ‘xx’)也失灵了,使用 Ctrl + F
下的 Find in Files
也无果(是我SB了,一种用的 USART_Handler 在搜索,一直无解)。
图一:
图二:
图三:
最终发现 USARTx_IRQHandler() 中断服务函数它是在 .s
文件中声明的(一共有三个地方进行声明),该函数是被汇编语言调用的,所以在 .c
与 .h
文件中搜索无果。
学习分享,一起成长!以上为小编的学习分享,若存在不当之处,请批评指正!