本博文内容导读📕🎉🔥
ESP32开发板的中断矩阵、功能描述与实现、相关API和示例程序进行介绍
ESP32中断矩阵将任一外部中断源单独分配到每个CPU的任一外部中断上,提供了强大的灵活性,能适应不同的应用需求。
ESP32中断主要有以下特性:
接收71个外部中断源作为输入,为两个CPU分别生成26个外部中断(总共52个)作为输出,屏蔽CPU的NMI类型中断,查询外部中断源当前的中断状态,
包括外设中断配置寄存器、中断源、中断矩阵和中断输出寄存器。
1.外部中断源
ESP32共有71个外部中断源,有67个可以分配给两个CPU,
其余4个外部中断源只能分配给特定的CPU,每个CPU2个。GPIO_INTERRUPT_PRO和GPIO_INTERRUPT_PRO_NMI只可以分配给PRO_CPU,GPIO_INTERRUPT_APP和GPIO_INTERRUPT_APP_NMI只可以分配给APP_CPU。
因此,PRO_CPU与APP_CPU各分配到69个外部中断源。
2.CPU中断源
两个CPU(PRO_CPU和APP_CPU)各有32个中断,其中26个为外部中断。
编号 |
类别 |
种类 |
优先级 |
编号 |
类别 |
种类 |
优先级 |
0 |
外部中断 |
电平触发 |
1 |
16 |
内部中断 |
定时器 2 |
5 |
1 |
外部中断 |
电平触发 |
1 |
17 |
外部中断 |
电平触发 |
1 |
2 |
外部中断 |
电平触发 |
1 |
18 |