WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
ADC

结构体

struct  adc_scan_config
 ADC扫描配置。 更多...
 

类型定义

typedef enum adc_clock adc_clock_t
 ADC一次采样需要16个时钟周期,因此采样速率 = adc_clk / 16。
 
typedef enum afe_scan_mode afe_scan_mode_t
 ADC的扫描模式。
 
typedef struct adc_scan_config adc_scan_config_t
 ADC扫描配置。
 
typedef void(* adc_callback_t) (uint8_t channel, uint32_t *buffer, uint32_t length, bool *next)
 ADC自动扫描回调函数指针。
 

枚举

enum  adc_clock {
  ADC_CLOCK_500KHZ = 0 , ADC_CLOCK_250KHZ = 1 , ADC_CLOCK_125KHZ = 2 , ADC_CLOCK_015KHZ = 3 ,
  ADC_CLOCK_MAX , ADC_CLOCK_NONE = ADC_CLOCK_MAX
}
 ADC一次采样需要16个时钟周期,因此采样速率 = adc_clk / 16。 更多...
 
enum  afe_scan_mode { AFE_GADC_MODE = 0 , AFE_HADC_MODE , AFE_SCAN_MODE_MAX_NUM }
 ADC的扫描模式。 更多...
 

函数

errcode_t uapi_adc_init (adc_clock_t clock)
 初始化ADC。
 
errcode_t uapi_adc_deinit (void)
 去初始化ADC。
 
void uapi_adc_power_en (afe_scan_mode_t afe_scan_mode, bool en)
 上下电并启用或关闭ADC。
 
bool uapi_adc_is_using (void)
 检查ADC是否正在使用。
 
errcode_t uapi_adc_open_channel (uint8_t channel)
 开启一个ADC通道。
 
errcode_t uapi_adc_close_channel (uint8_t channel)
 关闭一个ADC通道。
 
errcode_t uapi_adc_auto_scan_ch_enable (uint8_t channel, adc_scan_config_t config, adc_callback_t callback)
 启用ADC自动扫描通道,在启用自动扫描之前,需要打开ADC电源。
 
errcode_t uapi_adc_auto_scan_ch_disable (uint8_t channel)
 手动禁用单通道自动扫描。
 
void uapi_adc_auto_scan_disable (void)
 手动禁用自动扫描,禁用所有扫描通道,并关闭ADC电源。
 
bool uapi_adc_auto_scan_is_enabled (void)
 获取自动扫描状态。
 
int32_t uapi_adc_manual_sample (uint8_t channel)
 ADC手动采样。
 

详细描述

Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2022-2022. All rights reserved.

Description: Provides ADC driver API
History:
2022-09-16, Create file.

类型定义说明

◆ adc_callback_t

typedef void(* adc_callback_t) (uint8_t channel, uint32_t *buffer, uint32_t length, bool *next)

ADC自动扫描回调函数指针。

◆ adc_clock_t

typedef enum adc_clock adc_clock_t

ADC一次采样需要16个时钟周期,因此采样速率 = adc_clk / 16。

◆ adc_scan_config_t

ADC扫描配置。

◆ afe_scan_mode_t

ADC的扫描模式。

枚举类型说明

◆ adc_clock

enum adc_clock

ADC一次采样需要16个时钟周期,因此采样速率 = adc_clk / 16。

枚举值
ADC_CLOCK_500KHZ 

ADC时钟频率: 500KHZ。

ADC_CLOCK_250KHZ 

ADC时钟频率: 250KHZ。

ADC_CLOCK_125KHZ 

ADC时钟频率: 125KHZ。

ADC_CLOCK_015KHZ 

ADC时钟频率: 015KHZ。

ADC_CLOCK_MAX 
ADC_CLOCK_NONE 

◆ afe_scan_mode

ADC的扫描模式。

枚举值
AFE_GADC_MODE 

模拟前端ADC常规精度模式。

AFE_HADC_MODE 

模拟前端ADC高精度模式。

AFE_SCAN_MODE_MAX_NUM 

函数说明

◆ uapi_adc_auto_scan_ch_disable()

errcode_t uapi_adc_auto_scan_ch_disable ( uint8_t  channel)

手动禁用单通道自动扫描。

◆ 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自动扫描通道,在启用自动扫描之前,需要打开ADC电源。

◆ uapi_adc_auto_scan_disable()

void uapi_adc_auto_scan_disable ( void  )

手动禁用自动扫描,禁用所有扫描通道,并关闭ADC电源。

◆ uapi_adc_auto_scan_is_enabled()

bool uapi_adc_auto_scan_is_enabled ( void  )

获取自动扫描状态。

◆ uapi_adc_close_channel()

errcode_t uapi_adc_close_channel ( uint8_t  channel)

关闭一个ADC通道。

◆ uapi_adc_deinit()

errcode_t uapi_adc_deinit ( void  )

去初始化ADC。

◆ uapi_adc_init()

errcode_t uapi_adc_init ( adc_clock_t  clock)

初始化ADC。

◆ uapi_adc_is_using()

bool uapi_adc_is_using ( void  )

检查ADC是否正在使用。

◆ uapi_adc_manual_sample()

int32_t uapi_adc_manual_sample ( uint8_t  channel)

ADC手动采样。

◆ uapi_adc_open_channel()

errcode_t uapi_adc_open_channel ( uint8_t  channel)

开启一个ADC通道。

◆ uapi_adc_power_en()

void uapi_adc_power_en ( afe_scan_mode_t  afe_scan_mode,
bool  en 
)

上下电并启用或关闭ADC。