ADC电压采样
一 相关配置
adc驱动配置
设置参考电压
adc相关demo
二 ADC调试
相关源码见libhardware2/src/cmds/adc_main.c
2.1 shell命令
cmd_adc get_value <channel>
功能:读取指定通道的adc值
参数:channel //将要读取adc通道
example:
cmd_adc get_value 0
cmd_adc get_voltage <channel>
功能:读取指定通道的电压值
参数:channel //将要读取adc通道
example:
cmd_adc get_voltage 0
cmd_adc get_vref
功能:获取adc基准电压值
参数:无
example:
cmd_adc get_vref
cmd_adc set_vref <ref_voltage>
功能:设置adc基准电压值
参数:ref_voltage //基准电压值
example:
cmd_adc set_vref 1200
2.2 示例
# cmd_adc get_voltage 0 //读取adc通道0的电压
channel 0:adc sample voltage = 155
三 ADC 应用接口分析
相关源码见libhardware2/src/lib/adc/adc.c
3.1 API详细介绍
long adc_enable(unsigned int channle_id)
功能:使能指定的adc通道
参数:channle_id //adc的通道号
返回值:成功:ADC操作句柄
失败:-1
void adc_disable(long handle)
功能:失能对应的adc通道
参数:handle //adc操作句柄
返回值:无
int adc_set_vref(long handle, unsigned int vref)
功能:设置 adc基准电压
参数:handle //adc操作句柄
vref //adc基准电压
返回值:成功:0
失败:负数
int adc_get_vref(long handle)
功能:获取 adc 基准电压
参数:handle //adc操作句柄
返回值:成功:adc基准电压
失败:负数
int adc_get_value(long handle)
功能:获取adc通道采样后的原始值
参数:handle //adc操作句柄
返回值:成功:adc原始值
失败:负数
int adc_get_voltage(long handle)
功能:获取adc通道采样后的电压值,由采样后的原始值和基准电压计算得到
参数:handle //adc操作句柄
返回值:成功:电压值
失败:负数
3.2 使用流程
包含头文件:
#include <libhardware2/adc.h>
adc使用流程:
- adc_enable 使能指定的adc通道,获取adc设备句柄
- adc_set_vref 设置基准电压
- adc_get_value/adc_get_voltage 获取adc原始值或电压值