DRV_SADC
DRV_SADC API Status
API |
|---|
DRV_SADC Pin and GPIO Map
DRV_SADC API Reference
Header File
Functions
-
uint32_t drv_sadc_init(uint32_t dev_index)
init a sadc device.
初始化sadc设备,在使用sadc功能前需要调用它获取device instance
- 参数:
dev_index – [in] device index, start with 0
- 返回值:
0 – fail
other – success
- 返回:
device instance
-
int32_t drv_sadc_deinit(uint32_t dev_instance)
deinit a sadc device.
反初始化sadc设备,对drv_sadc_device_init()进行反向操作
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_sadc_reg_callback(uint32_t dev_instance, pfunc_sadc_cb_t pfn_cb)
register user callback.
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
pfn_cb – [in] user callback
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_sadc_cfg_channel_div(uint32_t dev_instance, uint8_t channel, uint32_t div, uint8_t sample_interval_plus_12)
config sadc channel & clock.
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
channel – [in] 具体从哪个通道进行数据采样, 0~12
div – [in] 分频参数,最大256
sample_interval_plus_12 – [in] 采样间隔,0:12个clock采样一次 1:13个clock采样一次 。。。
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_sadc_cfg_samp_param(uint32_t dev_instance, uint8_t drop_cnt, uint8_t sum_cnt, uint8_t out_cnt)
配置sadc channel的其他参数,平均后再写入fifo.
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
drop_cnt – [in] 采样后先丢掉drop个数据,最大15个
sum_cnt – [in] 平均多少个数据,求平均出一个数据(1/2/4/8/16)
out_cnt – [in] 多少个数据触发中断由用户callback读取, < 32=fifo depth
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_sadc_cfg_samp_param2(uint32_t dev_instance, uint8_t drop_cnt, uint8_t fifo_level)
配置sadc channel的其他参数,使用fifo的中断.
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
drop_cnt – [in] 采样后先丢掉drop个数据,最大15个
fifo_level – [in] fifo 中断的level配置 0 ~ 31
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
int32_t drv_sadc_start(uint32_t dev_instance, uint32_t vref_sel)
start sadc, start to sample.
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
vref_sel – [in] 0: 绝对电压 1:gpio测试相对电压(0~Vsys)
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
-
uint16_t drv_sadc_get_data(uint32_t dev_instance)
get sample data from sadc FIFO.
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
- 返回:
sample data(16bit)
-
int32_t drv_sadc_stop(uint32_t dev_instance)
force stop sadc.
一般情况下不会调用到该接口
- 参数:
dev_instance – [in] return value of drv_sadc_device_init()
- 返回值:
0 – success [BK_RET_OK]
other – fail
- 返回:
result
Type Definitions
-
typedef void (*pfunc_sadc_cb_t)(uint32_t dev_instance, uint8_t channel, uint8_t data_cnt)