当前位置:   article > 正文

rk3568-AD按键驱动调试_rk3568 adc按键

rk3568 adc按键
rk3568-AD按键驱动调试

dts设备树节点

/rk356x_linux_220118/kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi

板级设备树dts

/home/scooper/jkD7/20221221/ido_evb3568_v2_android11_sdk/kernel/arch/arm64/boot/dts/rockchip/ido-som3568-v2.dtsi

提示:这边ad的输入电压最高只有1.8V,如果需要提高,只能外部输入再做减压处理给到adc

设备树解析

io-channels --> 引用使用哪一路ADC

io-channels 属性 为 选择的通道号

io-channel-names 属性 表示 为申请的通道起一个别名。

keyup-threshold-microvolt 属性 表示按键抬起,saradc通道1的电压(单位微伏)。

poll-interval 表示获取ADC值的轮询间隔配置

press-threshold-microvolt 属性 表示按键按下,saradc通道1的电压。

vol-up-key, vol-down-key, menu-key, back-key 在硬件连接上,

linux,code 属性 为 按键上报的键值,键值对应的动作 为 “音量+” 。

label 表示 为按键起一个别名。

ADC驱动文件

/home/scooper/jkD7/20221221/ido_evb3568_v2_android11_sdk/kernel/drivers/iio/adc/rockchip_saradc.c

按键驱动

/home/scooper/jkD7/20221221/ido_evb3568_v2_android11_sdk/kernel/drivers/input/keyboard/adc-keys.c

rockchip的adc按键驱动rockchip的adc按键驱动_press-threshold-microvolt_内核分析笔记的博客-CSDN博客

源码实现

drivers/input/input-poller.c

参考链接

rockchip的adc按键驱动rockchip的adc按键驱动_press-threshold-microvolt_内核分析笔记的博客-CSDN博客

adb调试电压

adb shell cat /sys/bus/iio/devices/iio:device0/in_voltage0_raw

adb root

adb shell

cd /sys/bus/iio/devices/iio:device0/

cat /in_voltage0_raw

adb 查看事件响应

参考链接:

常用adb shell命令:getevent和sendevent常用adb shell命令:getevent和sendevent_adb.getenvent_小虾米有鲨鱼梦的博客-CSDN博客

电压采集计算

标准电压为 1.8V,AD 采集位数为 10 位,AD 采集到的原始数据为 5684,Vresult = (1800mv * 684) / 1023=1.2v

参考连接

RK3568开发笔记-CPU内部ADC调试RK3568开发笔记-CPU内部ADC调试_rk3568 saradc_flypig哗啦啦的博客-CSDN博客

rk3588-adc按键实现分析rk3588-adc按键实现分析_press-threshold-microvolt_mapleasx的博客-CSDN博客

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/431378
推荐阅读
  

闽ICP备14008679号