adc
ADC (Analog-to-Digital Converter) 提供模拟信号到数字信号的转换功能,支持单端采样、差分采样和自动扫描采样模式。
头文件清单
接口清单
| 接口名称 | 功能简述 |
|---|---|
| uapi_adc_init | 初始化ADC模块,配置采样时钟 |
| uapi_adc_deinit | 去初始化ADC模块,释放资源 |
| uapi_adc_power_en | ADC上电或下电使能控制 |
| uapi_adc_is_using | 查询ADC是否正在使用 |
| uapi_adc_open_channel | 开启ADC单端通道 |
| uapi_adc_close_channel | 关闭ADC单端通道 |
| uapi_adc_open_differential_channel | 开启ADC差分通道 |
| uapi_adc_close_differential_channel | 关闭ADC差分通道 |
| uapi_adc_auto_scan_ch_enable | 启用ADC自动扫描通道 |
| uapi_adc_auto_scan_ch_disable | 禁用ADC自动扫描通道 |
| uapi_adc_auto_scan_disable | 禁用ADC自动扫描,关闭所有扫描通道并下电 |
| uapi_adc_auto_scan_is_enabled | 查询ADC自动扫描是否使能 |
| uapi_adc_manual_sample | ADC手动采样 |
| uapi_adc_auto_sample | ADC自动采样 |
| uapi_adc_auto_sample_differential | ADC自动差分采样 |
Functions
uapi_adc_init
头文件清单
功能说明
- 初始化ADC模块,配置ADC采样时钟频率
- ADC源时钟为2MHz,一次采样需要16个时钟周期,采样速率 = adc_clk / 16
- 重复调用时若ADC已初始化,直接返回成功
前置条件
- ADC模块未被初始化(未调用过uapi_adc_init或已调用uapi_adc_deinit)
- 硬件ADC外设时钟已使能
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| clock | adc_clock_t | ADC采样时钟配置 | ADC_CLOCK_500KHZ(0) / ADC_CLOCK_250KHZ(1) / ADC_CLOCK_125KHZ(2) / ADC_CLOCK_015KHZ(3) |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | ADC初始化成功 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
uapi_adc_deinit
头文件清单
功能说明
- 去初始化ADC模块,释放ADC相关资源
- 反注册HAL层接口函数,关闭ADC时钟
- 重复调用时若ADC未初始化,直接返回成功
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC模块当前无采样操作正在进行
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | ADC去初始化成功 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
uapi_adc_power_en
头文件清单
功能说明
- 控制ADC上电或下电,并启用或关闭ADC
- 若当前上电状态与请求一致,则直接返回
- 支持选择不同的AFE精度模式进行上电
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC采样前必须调用本接口上电
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| afe_scan_mode | afe_scan_mode_t | AFE精度模式选择 | AFE_GADC_MODE(0) / AFE_HADC_MODE(1) / AFE_AMIC_MODE(1) / AFE_BIO_MODE(2),取值取决于CONFIG_ADC_SUPPORT_HAFE和CONFIG_ADC_SUPPORT_AMIC配置 |
| en | bool | 上电或下电标志 | true: 上电 / false: 下电 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AFE | 功能宏 | 支持ADC模拟前端模式 | y |
| CONFIG_ADC_SUPPORT_HAFE | 特性宏 | 支持ADC高精度模式特性 | y |
| CONFIG_ADC_SUPPORT_MUTEX | 特性宏 | 支持ADC互斥锁特性 | n |
uapi_adc_is_using
头文件清单
功能说明
- 查询ADC是否正在使用
- 用于判断ADC是否已上电,供其他模块检测ADC占用状态
- 返回结果反映ADC当前的上电状态
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- 调用上下文无特殊限制
返回值
- 返回类型:bool
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| true | ADC正在使用 | ADC已上电 |
| false | ADC未使用 | ADC未上电 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AFE | 功能宏 | 支持ADC模拟前端模式 | y |
| CONFIG_ADC_SUPPORT_HAFE | 特性宏 | 支持ADC高精度模式特性 | y |
uapi_adc_open_channel
头文件清单
功能说明
- 开启ADC单端通道,为后续采样操作做准备
- 同一时刻只允许一个单端通道工作
- 自动扫描使能时,不允许开启单端通道
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC已通过uapi_adc_power_en上电
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| channel | uint8_t | ADC通道号 | 0 ~ 7 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | 通道开启成功 |
| ERRCODE_ADC_INVALID_PARAMETER(0x80001141) | 参数无效 | 通道号超出范围或通道状态冲突 |
| ERRCODE_ADC_SCAN_NOT_DISABLE(0x80001142) | 自动扫描未禁用 | 自动扫描使能时尝试开启通道 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_DIFFERENTIAL | 功能宏 | 支持ADC差分采样功能 | y |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
| CONFIG_ADC_SUPPORT_AFE | 功能宏 | 支持ADC模拟前端模式 | y |
uapi_adc_close_channel
头文件清单
功能说明
- 关闭ADC单端通道,释放通道占用
- 关闭的通道必须与当前已开启的通道一致
- 自动扫描使能时,不允许关闭通道
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- 对应通道已通过uapi_adc_open_channel开启
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| channel | uint8_t | ADC通道号 | 必须与当前已开启的通道号一致 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | 通道关闭成功 |
| ERRCODE_ADC_INVALID_PARAMETER(0x80001141) | 参数无效 | 通道号与当前工作通道不一致 |
| ERRCODE_ADC_SCAN_NOT_DISABLE(0x80001142) | 自动扫描未禁用 | 自动扫描使能时尝试关闭通道 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_DIFFERENTIAL | 功能宏 | 支持ADC差分采样功能 | y |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
uapi_adc_open_differential_channel
头文件清单
功能说明
- 开启ADC差分通道,配置正极通道和负极通道
- 同一时刻只允许一组差分通道工作,与单端通道互斥
- 需开启CONFIG_ADC_SUPPORT_DIFFERENTIAL宏后才可用
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC已通过uapi_adc_power_en上电
- 当前无单端通道工作
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| postive_ch | uint8_t | ADC差分正极通道号 | 0 ~ 7 |
| negative_ch | uint8_t | ADC差分负极通道号 | 0 ~ 7 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | 差分通道开启成功 |
| ERRCODE_ADC_INVALID_PARAMETER(0x80001141) | 参数无效 | 通道号超出范围或通道状态冲突 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_DIFFERENTIAL | 功能宏 | 支持ADC差分采样功能 | y |
uapi_adc_close_differential_channel
头文件清单
功能说明
- 关闭ADC差分通道,释放差分通道占用
- 关闭的通道必须与当前已开启的差分通道一致
- 自动扫描使能时,不允许关闭差分通道
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- 对应差分通道已通过uapi_adc_open_differential_channel开启
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| postive_ch | uint8_t | ADC差分正极通道号 | 必须与当前已开启的差分正极通道号一致 |
| negative_ch | uint8_t | ADC差分负极通道号 | 必须与当前已开启的差分负极通道号一致 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | 差分通道关闭成功 |
| ERRCODE_ADC_INVALID_PARAMETER(0x80001141) | 参数无效 | 通道号与当前差分工作通道不一致 |
| ERRCODE_ADC_SCAN_NOT_DISABLE(0x80001142) | 自动扫描未禁用 | 自动扫描使能时尝试关闭通道 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_DIFFERENTIAL | 功能宏 | 支持ADC差分采样功能 | y |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
uapi_adc_auto_scan_ch_enable
errcode_t uapi_adc_auto_scan_ch_enable(uint8_t channel, adc_scan_config_t config, adc_callback_t callback)
头文件清单
功能说明
- 启用ADC自动扫描通道,配置扫描模式和回调函数
- 支持FIFO全扫描和阈值扫描两种模式
- 需开启CONFIG_ADC_SUPPORT_AUTO_SCAN宏后才可用
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC已通过uapi_adc_power_en上电
- 回调函数不为NULL
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| channel | uint8_t | ADC通道号 | 0 ~ 7 |
| config | adc_scan_config_t | 自动扫描配置 | type: 0(FIFO全扫描) / 1(阈值扫描); freq: 0~7; threshold_l/threshold_h: 电压范围(v) |
| callback | adc_callback_t | 自动扫描中断回调函数 | 不为NULL |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | 自动扫描通道启用成功 |
| ERRCODE_ADC_INVALID_PARAMETER(0x80001141) | 参数无效 | 通道号超出范围、回调为NULL或配置参数非法 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
| CONFIG_ADC_SUPPORT_LONG_SAMPLE | 特性宏 | 支持ADC长采样模式特性 | n |
uapi_adc_auto_scan_ch_disable
头文件清单
功能说明
- 禁用ADC单个通道的自动扫描
- 需开启CONFIG_ADC_SUPPORT_AUTO_SCAN宏后才可用
- 禁用后该通道不再参与自动扫描
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- 对应通道已通过uapi_adc_auto_scan_ch_enable启用自动扫描
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| channel | uint8_t | ADC通道号 | 0 ~ 7 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC(0x00) | 执行成功 | 自动扫描通道禁用成功 |
| ERRCODE_ADC_INVALID_PARAMETER(0x80001141) | 参数无效 | 通道号超出范围 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
uapi_adc_auto_scan_disable
头文件清单
功能说明
- 禁用ADC自动扫描总控制,关闭所有扫描通道并关闭ADC电源
- 需开启CONFIG_ADC_SUPPORT_AUTO_SCAN宏后才可用
- 调用后ADC自动扫描功能完全停止
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC自动扫描已使能
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
| CONFIG_ADC_SUPPORT_AFE | 功能宏 | 支持ADC模拟前端模式 | y |
| CONFIG_ADC_SUPPORT_HAFE | 特性宏 | 支持ADC高精度模式特性 | y |
uapi_adc_auto_scan_is_enabled
头文件清单
功能说明
- 查询ADC自动扫描总控制是否使能
- 需开启CONFIG_ADC_SUPPORT_AUTO_SCAN宏后才可用
- 返回结果反映自动扫描总控制的当前状态
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- 调用上下文无特殊限制
返回值
- 返回类型:bool
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| true | 自动扫描已使能 | 自动扫描总控制已开启 |
| false | 自动扫描未使能 | 自动扫描总控制已关闭 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AUTO_SCAN | 功能宏 | 支持ADC自动扫描功能 | y |
uapi_adc_manual_sample
头文件清单
功能说明
- 触发ADC手动采样,获取指定通道的采样值
- 通道号超出范围时返回0
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC已通过uapi_adc_power_en上电
- 指定通道已通过uapi_adc_open_channel开启
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| channel | uint8_t | ADC通道号 | 0 ~ 7 |
返回值
- 返回类型:int32_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| int32_t | ADC采样值 | 采样成功,返回采样值 |
| 0 | 采样失败 | 通道号超出范围 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
uapi_adc_auto_sample
头文件清单
功能说明
- 触发ADC自动采样,获取指定通道的采样值
- 需开启CONFIG_ADC_SUPPORT_AFE宏后才可用
- 需在ADC上电后调用
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC已通过uapi_adc_power_en上电
- 指定通道已通过uapi_adc_open_channel开启
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| channel | uint8_t | ADC通道号 | 0 ~ 7 |
返回值
- 返回类型:int32_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| int32_t | ADC采样值 | 采样成功 |
| 0 | 采样失败 | 通道号超出范围或ADC未上电 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AFE | 功能宏 | 支持ADC模拟前端模式 | y |
| CONFIG_ADC_SUPPORT_HAFE | 特性宏 | 支持ADC高精度模式特性 | y |
| CONFIG_ADC_SUPPORT_DIFFERENTIAL | 特性宏 | 支持ADC差分采样特性 | y |
| CONFIG_ADC_SUPPORT_MUTEX | 特性宏 | 支持ADC互斥锁特性 | n |
uapi_adc_auto_sample_differential
头文件清单
功能说明
- 触发ADC自动差分采样,获取正极和负极通道的差分采样值
- 需同时开启CONFIG_ADC_SUPPORT_AFE和CONFIG_ADC_SUPPORT_DIFFERENTIAL_SAMPLE宏后才可用
- 需在ADC上电且差分通道已开启后调用
前置条件
- ADC模块已通过uapi_adc_init初始化完成
- ADC已通过uapi_adc_power_en上电
- 差分通道已通过uapi_adc_open_differential_channel开启
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| pchannel | uint8_t | ADC差分正极通道号 | 0 ~ 7 |
| nchannel | uint8_t | ADC差分负极通道号 | 0 ~ 7 |
返回值
- 返回类型:int32_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| int32_t | ADC差分采样值 | 采样成功 |
| 0 | 采样失败 | 通道号超出范围、ADC未上电或差分通道未开启 |
Kconfig配置
| 配置项 | 宏类型 | 说明 | 默认值 |
|---|---|---|---|
| CONFIG_DRIVER_SUPPORT_ADC | 编译参与宏 | 控制adc.c参与编译 | n |
| CONFIG_ADC_SUPPORT_AFE | 功能宏 | 支持ADC模拟前端模式 | y |
| CONFIG_ADC_SUPPORT_DIFFERENTIAL_SAMPLE | 功能宏 | 支持ADC差分采样功能 | y |
| CONFIG_ADC_SUPPORT_MUTEX | 特性宏 | 支持ADC互斥锁特性 | n |
Type definitions
errcode_t
使用说明
作为ADC模块所有返回errcode_t的接口函数的返回值类型 [SDK公共基础类型]
adc_callback_t
使用说明
作为uapi_adc_auto_scan_ch_enable接口的回调函数参数类型。调用时机:ADC自动扫描中断触发时,由中断处理函数调用。参数channel为自动扫描通道号,buffer为自动扫描采样结果存放,length为采样结果长度(扫描失败时为0,FIFO全扫描时为128,阈值扫描时为1),next用于控制是否继续自动扫描。回调返回值为void,不涉及返回值检查。
Enumerations
adc_clock
typedef enum adc_clock {
ADC_CLOCK_500KHZ = 0, /*!< ADC clock: 500KHZ. */
ADC_CLOCK_250KHZ = 1, /*!< ADC clock: 250KHZ. */
ADC_CLOCK_125KHZ = 2, /*!< ADC clock: 125KHZ. */
ADC_CLOCK_015KHZ = 3, /*!< ADC clock: 015KHZ. */
ADC_CLOCK_MAX,
ADC_CLOCK_NONE = ADC_CLOCK_MAX
} adc_clock_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| ADC_CLOCK_500KHZ | 0 | ADC时钟频率:500KHZ |
| ADC_CLOCK_250KHZ | 1 | ADC时钟频率:250KHZ |
| ADC_CLOCK_125KHZ | 2 | ADC时钟频率:125KHZ |
| ADC_CLOCK_015KHZ | 3 | ADC时钟频率:15KHZ |
| ADC_CLOCK_MAX | 4 | 时钟枚举上限 |
| ADC_CLOCK_NONE | 4 | 无效时钟值 |
afe_scan_mode
typedef enum afe_scan_mode {
AFE_GADC_MODE = 0, /*!< Analog Front-End ADC General precision mode. */
#if defined (CONFIG_ADC_SUPPORT_HAFE)
AFE_HADC_MODE, /*!< Analog Front-End ADC High precision mode. */
#elif (defined CONFIG_ADC_SUPPORT_AMIC)
AFE_AMIC_MODE, /*!< Analog Front-End ADC microphone mode. */
AFE_BIO_MODE, /*!< Analog Front-End ADC biologic mode. */
#endif
AFE_SCAN_MODE_MAX_NUM
} afe_scan_mode_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| AFE_GADC_MODE | 0 | 模拟前端ADC常规精度模式 |
| AFE_HADC_MODE | 1 | 模拟前端ADC高精度模式(CONFIG_ADC_SUPPORT_HAFE启用时) |
| AFE_AMIC_MODE | 1 | 模拟前端ADC麦克风模式(CONFIG_ADC_SUPPORT_AMIC启用时) |
| AFE_BIO_MODE | 2 | 模拟前端ADC生物测量模式(CONFIG_ADC_SUPPORT_AMIC启用时) |
| AFE_SCAN_MODE_MAX_NUM | 2/3 | 扫描模式枚举上限 |
Structures
adc_scan_config
typedef struct adc_scan_config {
uint8_t type; /*!< Scan when the FIFO is full or exceeds the threshold. */
float threshold_l; /*!< Lower threshold of scanning voltage (v). */
float threshold_h; /*!< Upper threshold of scanning voltage (v). */
uint8_t freq; /*!< ADC scan frequency for all channels. */
#if defined(CONFIG_ADC_SUPPORT_LONG_SAMPLE)
uint32_t long_sample_time; /*!< ADC long sample report cycle [ms]. */
#endif
} adc_scan_config_t;
成员说明
| 成员名称 | 数据类型 | 描述 |
|---|---|---|
| type | uint8_t | 扫描类型:0为FIFO全扫描,1为阈值扫描 |
| threshold_l | float | 阈值扫描电压下限(v) |
| threshold_h | float | 阈值扫描电压上限(v) |
| freq | uint8_t | ADC扫描频率,07对应2Hz256Hz |
| long_sample_time | uint32_t | ADC长采样上报周期(单位:毫秒),CONFIG_ADC_SUPPORT_LONG_SAMPLE启用时存在 |