配置CAN中断的时候有一个疑惑,已经配置NVIC启用相应中断通道后,为什么还要配置再去配置CAN_ITConfig(CAN1, CAN_IT_FMP0, ENABLE);去再打开一遍中断呢?
这两个有什么区别,都是在配置什么?
我们先分别看看NVIC_IRQChannel 和中断源是什么,然后再看他们的联系。
首先通过查STM32的中断向量表可以看到,与CAN相关的中断向量(IRQChannel)有4个.
然后我们再去看CAN_ITConfig这个函数
然后我们查询参考手册CAN中断相关章节可以看到:
通过对比可以看到我们配置的就是图表中左边和右边。CAN的中断源就是通过图中方式连接到4根中断线上的。
再看一个USART的例子: