i2c input设备读写出错
我添加了一个i2c的键盘,probe函数调用后,里面读写i2c就会出错:
这里读寄存器一直失败,
[ 53.020690] tca8424_keypad 2-003b: tca8424_read_byte failed, reg: 1, error: -110
[ 53.030669] tca8424_keypad: probe of 2-003b failed with error -110
请问添加一个i2c设备,从设备地址设置正确后,还需要其他设置吗?从设备地址正确了不就可以读写从设备了吗?那为什么还会读写出错呢。刚接触i2c,望大神不吝赐教!
static struct i2c_board_info mxc_i2c2_board_info[] __initdata = {
{
I2C_BOARD_INFO("rtc-pcf8563", 0x51),
.type = "pcf8563",
},
{
I2C_BOARD_INFO("tca8424_keypad", 0x3b),
.type = "tca8424_keypad" ,
.irq = MX53_TCA6416_IRQ,
.platform_data = &tca8424_date,
}
};
i2c_register_board_info(2, mxc_i2c2_board_info,
ARRAY_SIZE(mxc_i2c2_board_info));
tca8424_keypad_probe()
{
....
int reg, error;
error = tca8424_read_byte(keypad_data, REG_HID_DESCRIP_LEN_L, ®);
if(error < 0)
printk("reg = 0x%x\n",reg);
....
}
这里读寄存器一直失败,
[ 53.020690] tca8424_keypad 2-003b: tca8424_read_byte failed, reg: 1, error: -110
[ 53.030669] tca8424_keypad: probe of 2-003b failed with error -110
请问添加一个i2c设备,从设备地址设置正确后,还需要其他设置吗?从设备地址正确了不就可以读写从设备了吗?那为什么还会读写出错呢。刚接触i2c,望大神不吝赐教!
...全文
相关推荐
触屏驱动实例
触屏驱动框架实例,但是还有很多相关的代码没贴出,只给出一般设备匹配进入probe的必要内容。
iic.rar_AVR IIC_AVR模拟IIC_AVR编译_IIC AVR_avr
avr单片机IO模拟实现IIC接口,采用ICCAVR编译器.
I2C读写时序
这个是基于stm32f103的I2C通信,用PCF8591检测了通信协议,最终成功,I2C通信最重要的是关于SDA端口输入输出寄存器的修改
I2C模拟读写程序
使用普通GPIO管脚模拟I2C接口读写数据,简便易用,亲测可以使用,请根据CPU的主频适当改变延时时间。
eerom I2c读写例程
使用软件模拟I2C的方式,读写外接的eerom


驱动程序开发区
