STM32
直播中

梁兴力

7年用户 226经验值
私信 关注
[问答]

串口中断可以使用同一个中断函数void USART1_IRQHandler吗?

看了原子哥的串口程序有一个问题不是很理解   
    USART1->CR1|=1<<8;    //PE中断使能
    USART1->CR1|=1<<5;    //接收缓冲区非空中断使能
你开了两个中断,确只写了一个串口中断函数,进入的是同一个中断服务函数,换句话说难道串口1中的中断(发送完成中断,接受缓冲区非空中断,发送缓冲区非空中断等
)都将可以使用同一个中断函数void USART1_IRQHandler(void)?
如果不是这样子的话,那开了两个中断,却使用了一个中断函数,这个怎么理解啊?
大家帮帮忙,稍稍指导一下。

回帖(4)

王桂花

2020-5-13 06:35:08
所有的串口中断,都只有一个中断服务函数,通过SR判断中断类型.
举报

徐丽丽

2020-5-13 06:44:49
一个串口还要两个中断函数多麻烦呀,
在程序里判断是什么原因引起的中断不就行了,
外部中断 10 - 15 还共用一个中断函数呢。
举报

张婷

2020-5-13 06:51:05
基本上这种数据传输的中断都是一个中断多个功能
举报

汤敏树

2020-5-13 07:01:43
谢谢各位热心的大虾了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分