嵌入式Linux系统ADC按键驱动
1 硬件基础
我们的开发板上集成两个ADC的按键,原理图如下,连接主控的SAR-ADC,SAR (Successive Approximation Register)即逐次逼近的算法,第一个通道:
2 设备树节点
RK3308支持SAR-ADC,我们工程默认已经支持了该驱动,在rk3308.dtsi中可以找到节点:
这个设备节点是在rk3308-evb-v10.dtsi中被开启的:
3 应用
3.1 了解IIO子系统
IIO子系统的全称是 Industrial I/O subsystem(工业 I/O 子系统),工业I / O(IIO)是专用于模数转换器(ADC)和数模转换器(DAC)的内核子系统,比如常被支持的设备:ADCs(模数转换器),加速度传感器、陀螺仪、压力/温度和光线传感器、磁力计传感器、电能功率计、旋变数字转换器等等;调用的基本框架如下:
IIO的路径在:/sys/bus/iio
3.2 按键测试
进入路径:/sys/bus/iio/devices/iio:device0
我们的ADC按键挂在第一个channel,因此我们可以cat in_voltage1_raw
可以看到不按按键和按不同按键下ADC数值的改变。
===================================================================================================================================================================
如果觉得对您有帮助并想进一步深入学习交流可以扫描以下微信二维码或加入QQ群:928840648
欢迎共同学习成长,有一群爱学习的小伙伴一起勉励!!一起加油!!也可点击
笔者基于嵌入式系统框架内容如下整理编辑: