介绍一下ESP32的触控功能

2018-10-291.4万
AI 快速预览详细 收起
本文介绍了ESP32的触控功能,通过Arduino平台使用touchRead()函数读取触控值。首先展示了如何通过串口监视器查看触控结果,然后进一步演示了如何根据触控值控制LED灯的开关。文章提供了详细的代码示例,适合编程新手学习和实践。
介绍一下ESP32的触控功能图1不多说了,直接上图做说明
介绍一下ESP32的触控功能图2
介绍一下ESP32的触控功能图3
介绍一下ESP32的触控功能图4
特色
ESP32是双核,即它可以执行多任务
ESP32内置了蓝牙和wifi功能
ESP32可以运行32位程序
内置时钟频率可达240MHz
内存是512K
针脚多达30个
其外设功能可以有: 触控, ADCs, DACs,
UART, SPI, I2C 等。
介绍一下ESP32的触控功能图5
烧录工具多样
介绍一下ESP32的触控功能图6
这里并不想不时间浪费在安装ESP32到Arduino上,这里假定您已经安装了esp32 到Arduino上了。
介绍一下ESP32的触控功能图7
这里要调用一个arduino的命令,叫touchRead()。
函数表达是touchRead (pin),问题来了这个pin是用哪个呢?还记得pinout图吗。
介绍一下ESP32的触控功能图8
pin 0 对应的是GPIO4.
程序超简单的。我们用串口看一下触控结果
[mw_shl_code=applescript,true]// Done by gada888
//  Touch0 is T0 which is on GPIO 4.
void setup()
{
Serial.begin(115200);
delay(1000); // give me time to bring up serial monitor
Serial.println("ESP32 Touch Test");
}
void loop()
{
Serial.println(touchRead(T0)); // get value using T0
delay(1000);
}[/mw_shl_code]

介绍一下ESP32的触控功能图9
简单吧。下面来个进阶的。如果我们设置一个值。如果变量大于这个值,高电平,低于这个值,低电平。
介绍一下ESP32的触控功能图10
[mw_shl_code=applescript,true]// 设触控针脚
#define touchPin T0
const int ledPin = 16;
// 设灯针脚
const int threshold = 20;
// 变量存放触控值
int touchValue;
void setup(){
Serial.begin(115200);
delay(1000); // 缓冲
//初始化LED
pinMode (ledPin, OUTPUT);
}
void loop(){
// 读按键值
touchValue = touchRead(touchPin);
Serial.print(touchValue);
// 检查变量值大小,确定LED高或低电平
if(touchValue < threshold){
// 开灯
digitalWrite(ledPin, HIGH);
Serial.println(" - LED on");
}
else{
//关灯
digitalWrite(ledPin, LOW);
Serial.println(" - LED off");
}
delay(500);
}[/mw_shl_code]






创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -