tmd26353接近传感器之i2c驱动编写
时间:2022-08-29 22:30:00
一、tmd26353驱动编写思路:
基于i2c设备驱动框架,首先参考原理图配置dts设备树,挂在哪里?i2c在总线下,阅读规格书以确定该设备的设备地址为0x39(也可用i2ctools检查设备的挂载情况,i2c-tools使用和调试);测试i2c通讯成功与否,可以阅读DEVICE_ID这个寄存器值,然后初始化tmd26353,最后,在线程中读取接近传感器的传感器ADC(之前的写作是用中断获得的ADC值,查阅资料发现,内核中断处理程序不能操作I2C操作界面,因为操作I2C_transfer时transfer内部也会有中断。因此,如果中断套中断,锁将死亡),ADC值变化范围和POFFSET寄存器值相关,可设置范围为±255,根据实际需要设置值,然后通过写节点接口ADC将值反馈给应用层读取。
二、代码分析:
dts配置如下:
&i2c5 {
status = "okay"; tmd26353:tmd26353@39{