stm32的中断服务函数必须是这个吗,void USART2_IRQHandler(void)
不能自己写个中断函数吗比如void USART2_Handler(void)
可以的,但是需要自己重新定义。
在启动文件中如;startup_stm32f10x_md.s文件中定义到所有的中断函数入口和名字:
如果你想更改的,建议你修改你的代码,不去修改库函数。如下图:
这样你的Uart232_IRQHandler()函数就是中断函数。
其实函数就是一个地址,这个地址的声明位置在启动文件中(.S),改启动文件就能改名称;
建议不要改,程序兼容和移植会很麻烦
首先,STM32的启动文件里,对所有的50多个中断,做了一个中断向量表,在这个表里定义了所有的中断以及中断的优先级顺序。
但是STM32也允许用户自定义函数,只要重定义重构就行了,你可以定义一个新的,但是函数内实现用的是官方的(这样可以避免启动文件的错误)