EasyManuals Logo

Freenove ESP32 User Manual

Default Icon
159 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #120 background imageLoading...
Page #120 background image
Need support? support@freenove.com
118
Chapter 11 Touch
www.freenove.com
44
45
46
47
touch_pad_intr_enable();
xTaskCreateUniversal(task_Touch, "task_Touch", 4096, NULL, 1, NULL, 1);
}
Touch sensor thread callback function.
101
102
103
104
105
106
void task_Touch(void *pvParameters) {
Serial.printf("task_Touch is running...\r\n");
while (1) {
task_TouchPad(NULL);
}
}
Touch function threshold setting function. When the sensor is touched, the internal capacitor discharges,
and the data change can be detected at the touch pin. Here, 4/5 of the value of the touch sensor without
contact is set as the threshold trigger range.
3
4
5
6
7
8
9
10
11
static uint32_t s_pad_init_val;
static void tp_example_set_thresholds(void) {
uint16_t touch_value;
// read filtered value
touch_pad_read_filtered(PIN_TOUCH_PAD, &touch_value);
s_pad_init_val = touch_value;
// set interrupt threshold.
touch_pad_set_thresh(PIN_TOUCH_PAD, touch_value * 4 / 5);
}
Touch sensor interrupt trigger function. Execute this function every time the touch sensor is triggered, to set
touchPadVal to true.
12
13
14
15
16
17
18
19
20
21
22
bool touchPadVal = false;
void isr_touchpad(void *arg) {
// uint16_t touchVal = 0;
uint32_t touchStatus = 0;
touchStatus = touch_pad_get_status(); // TOUCHPAD3 : 0000 1000 = 0x08
if (touchStatus == 0x08) // TOUCHPAD3
{
touchPadVal = true;
}
touch_pad_clear_status();
}

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Freenove ESP32 and is the answer not in the manual?

Freenove ESP32 Specifications

General IconGeneral
BrandFreenove
ModelESP32
CategoryComputer Hardware
LanguageEnglish

Related product manuals