这个问题也一直没有很深入地研究, 趁着楼主一问, 再翻了一通书. 结合以前编程的一些体会, 交流一下.
其实书上(Datasheet) 也没有很明确地说明两者的区别.
仅在外部(EXTI) 部分并列地提到这两者.
我感觉归纳一下, 事件包括了各种硬件检测到的状态的变化, 但要在硬件部件里有定义的. 除了 IO 口变化之外, 其他硬件比如定时器等里也定义了好多事件. 而中断则偏向于需要软件做出处理的硬件状态变化. 但是照这个说法, 所有的中断都包含在事件中. (我以前也这么理解), 但事实上, 在 stm32 处理器里面, 只把一部分的硬件的状态变化定义成了事件, 所以, 并非所有能产生中断的硬件状态变化都是事件. 这只能根据具体硬件具体分析了.
好在数据手册对各个硬件单独进行了详细说明. 还是具体问题区别对待了.
|