使用触控感应器点亮LED

介绍:ESP32具有10个电容触摸GPIO。 这些GPIO可以感应任何带有电荷的东西的变化,例如人体皮肤。 因此可以使用他们检测到用手指触摸GPIO时引起的变化,利用这个功能,我们可以用手指触摸针脚来控制LED的亮和灭。

一、工具原料

零知ESP32:http://www.lingzhilab.com/home/introduction.html?gid=184

二、连线

三、代码


												
	// set pin numbers
	const int touchPin = 4;
	const int ledPin = 16;
	 
	// change with your threshold value
	const int threshold = 20;
	// variable for storing the touch pin value
	int touchValue;
	 
	void setup() {
	        Serial.begin(9600);
	        delay(1000); // give me time to bring up serial monitor
	// initialize the LED pin as an output:
	        pinMode (ledPin, OUTPUT);
	}
	 
	void loop() {
	// read the state of the pushbutton value:
	        touchValue = touchRead(touchPin);
	        Serial.print(touchValue);
	// check if the touchValue is below the threshold
	// if it is, set ledPin to HIGH
	        if (touchValue < threshold) {
	// turn LED on
	                digitalWrite(ledPin, HIGH);
	                Serial.println(" - LED on");
	        }   else {
	// turn LED off
	                digitalWrite(ledPin, LOW);
	                Serial.println(" - LED off");
	        }
	        delay(500);
	}
					

在右侧选择ESP32开发板,然后验证程序,如图:

然后上传程序到开发板,打开串口调试窗口,当用手触摸4号针脚时读取的值低于预设值20时,LED点亮。