我用2440+7113,ce系统,本来7113的iic读写地址应该是4a/4b,但我用这两个端口操作7113失败,7113的手册上说如果RTS0用3.3k电阻接地,则地址就变成48/49,我修改我的程序读写48/49后,结果是得到的图像很不稳定,有时能得到有时得不到,得到的图像也是错位的。
现在的问题是:
1、7113的地址应该是4a/4b(这点可以确认,因为相同的控制代码在uboot的测试程序中是正常得到图像的),为什么ce下的程序读写失败,反而读写48/49有时候能得到图像?
2、是不是因为在ce系统下,7113这里的电压不稳定?还是因为我没有在driver里设置好电源?如果是需要设置电源状态的话,我已经调用了DevicePowerNotify(L"SAA1",D0,POWER_NAME),还需要怎样操作?
检查一下I2C总线上是否有其他设备,并且可能存在地址冲突;
相同的代码,相同的硬件,在uboot上能得到正确结果,应该是没有地址冲突的吧