ESP32的电容touch和外部中断
中断原理
中断的目的是为了暂停主程序的运行,先去执行中断服务程序,其功能是为了提高CPU工作效率。在中断源提出中断请求后,处理器执行完当前指令便进行中断响应,一旦中断服务程序执行完毕后,仍须返回到主程序被中断处(断点处)继续执行原先程序。
代码编写
#include <Arduino.h>
// 定义外部中断的Mode
// 0: 无中断,读取Touch值
// 1:Touch中断,执行 TouchEvent()
// 2: 外部IO的中断
#define EXT_ISR_MODE 0
void TouchEvent()
{
Serial.printf("Touch Event.\r\n");
}
void PinIntEvent()
{
Serial.printf("PinInt Event.\r\n");
}
void setup()
{
// put your setup code here, to run once:
Serial.begin(115200);
#if 1 == EXT_ISR_M