1 /**************************************************************************//**
2 *
3 * @copyright (C) 2019 Nuvoton Technology Corp. All rights reserved.
4 *
5 * SPDX-License-Identifier: Apache-2.0
6 *
7 * Change Logs:
8 * Date            Author       Notes
9 * 2022-2-21       Wayne        First version
10 *
11 ******************************************************************************/
12 
13 #ifndef __TOUCH_SW_H__
14 #define __TOUCH_SW_H__
15 
16 #include <rtthread.h>
17 #include <rtdevice.h>
18 
19 typedef enum
20 {
21     evXL,  //X-
22     evYU,  //Y-
23     evXR,  //X+
24     evYD,  //Y+
25     evTOUCH_PIN_CNT
26 } E_TOUCH_PIN;
27 
28 typedef struct
29 {
30     char            *adc_name;
31     rt_device_t      adc;
32     int i32ADCChnYU;
33     int i32ADCChnXR;
34     rt_touch_t       psRtTouch;
35 
36     rt_base_t        pin[evTOUCH_PIN_CNT];
37     void (*switch_to_analog)(rt_base_t pin);
38     void (*switch_to_digital)(rt_base_t pin);
39 } S_TOUCH_SW;
40 
41 rt_err_t nu_adc_touch_sw_register(S_TOUCH_SW *psTouchSW);
42 
43 #endif /* __TOUCH_SW_H__ */
44