1 /*
2  * Copyright (C) 2015-2021 Alibaba Group Holding Limited
3  */
4 
5 #ifndef _IO_ADC_H_
6 #define _IO_ADC_H_
7 
8 #include <stdbool.h>
9 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 /** @defgroup driver_api driver
15  *  @ingroup aos_components
16  * @{
17  */
18 
19 /**
20  * @}
21  */
22 
23 /** @defgroup adc_device_api adc
24  *  @ingroup driver_api
25  * @{
26  */
27 
28 /* ADC DEVICE IOCTL CMD宏定义 */
29 #define IOC_ADC_BASE 'A'
30 #define IOC_ADC_START IOC_ADC_BASE + 1 /**< 启动ADC设备*/
31 #define IOC_ADC_STOP IOC_ADC_BASE + 2  /**< 停止ADC设备*/
32 #define IOC_ADC_GET_VALUE IOC_ADC_BASE + 3 /**< 从ADC设备读取数据 */
33 
34 /* ADC 读取数据的参数 */
35 typedef struct io_adc_arg {
36     unsigned int value;   /**< 出参,读取到的数据 */
37     unsigned int timeout; /**< 入参,超时时间(单位:ms)*/
38 } io_adc_arg_t;
39 
40 /**
41  * 注册ADC设备驱动到VFS框架
42  *
43  * @return  0:成功,否则失败
44  */
45 int vfs_dac_drv_init (void);
46 
47 /**
48  * @}
49  */
50 #ifdef __cplusplus
51 }
52 #endif
53 
54 #endif /*_IO_ADC_H_*/
55