找回密码
 注册
搜索
查看: 1465|回复: 13

[讨论] ov2655 SCCB读寄存器问题

[复制链接]
发表于 2010-7-8 17:04:51 | 显示全部楼层 |阅读模式
环境是linux 2.6.21
ov2655 内部寄存器地址是16bit, 读PIDH需先写入PIDH sub_address(0x300a).可是在写入slave address(0x60)---->然后写入0x30时总是time out.
MCLK 已经enable, clock 是26MHZ. AVDD 也是2.8v. 怀疑是硬件线的问题,可是换上ov9665(sub_address 为 8bit)后却是ok的.

帮忙分析下可能是什么问题。谢谢!
 楼主| 发表于 2010-7-13 14:38:47 | 显示全部楼层
恩,没有用原来的,自己重写了个。
在i2c bus write时,16bit 与 8bit reg sub_address的差别就是在发送完slave address后发送sub_address时,16bit 连着发2 bytes. 其它都是一样的.
现在的问题是发送第一个sub_address byte就time out了。
点评回复

使用道具 举报

发表于 2010-7-13 13:38:54 | 显示全部楼层
有,但不是很直接的像i2c_smbus_write_byte_data那样。你看下i2c-core.c中的i2c_master_send()。或自己写个,调用i2c_transfer()。i2c_smbus_write_byte_data()是不行的。
点评回复

使用道具 举报

 楼主| 发表于 2010-7-13 09:26:13 | 显示全部楼层
linux 本身没有读写16bit sub_address的i2c接口。 是在原来读写8bit sub_address的接口上修改的,不过是在发送完slave address后,发送sub_address时就失败了,看起来像是i2c 没有在slave address处找到设备。不知道与i2c clock有没有关系?
点评回复

使用道具 举报

发表于 2010-7-10 15:05:10 | 显示全部楼层
关于原码、反码、补码以前也学过,现在都忘了,连书都找不到了,能不能请教下大虾:+5的二进制的原码、反码、补码是多少?-5的原码、反码、补码又是多少?谢谢,不胜感激!
点评回复

使用道具 举报

发表于 2010-7-9 09:29:10 | 显示全部楼层
i2c传输问题?可能是调用的linux i2c 接口不对。
点评回复

使用道具 举报

 楼主| 发表于 2010-7-13 18:39:15 | 显示全部楼层
唉,把i2c clock 设置为400khz,也不行...
点评回复

使用道具 举报

发表于 2010-7-13 18:15:21 | 显示全部楼层
不知道了。很奇怪。
点评回复

使用道具 举报

 楼主| 发表于 2010-7-13 18:07:27 | 显示全部楼层
现在发送寄存器的sub_address 失败,所以不能读寄存器。
reset,powerdown和ov9665是一样,ov9665是ok的,所以应该也没问题。
点评回复

使用道具 举报

发表于 2010-7-13 17:57:24 | 显示全部楼层
哦,那不太清楚。
可以读寄存器吗?
OV2655硬件上的reset,powerdown 拉低 做了吗?
点评回复

使用道具 举报

 楼主| 发表于 2010-7-13 17:04:00 | 显示全部楼层
恩,是用了i2c_transfer(),这个函数fail.
printk可以看到是发送sub_address的第一个byte timeout.
点评回复

使用道具 举报

发表于 2010-7-13 16:27:57 | 显示全部楼层
i2c 协议上是这样的。差别就是在发送完slave address后发送sub_address时,16bit 连着发2 bytes。
但你操作的是i2c控制器,与camera进行i2c通信。
所以最好用linux提供的i2c_transfer()函数。
比如你要些3340寄存器。
u8 au8Buf[3] = {0};
au8Buf[0] = 0x33;
au8Buf[1] = 0x40;
au8Buf[2] = 你要写的值;
i2c_master_send(你的.i2c_client, au8Buf, 3);
点评回复

使用道具 举报

 楼主| 发表于 2010-7-20 12:07:25 | 显示全部楼层
查清了,还是硬件连线的问题。。。
点评回复

使用道具 举报

发表于 2011-9-19 22:28:43 | 显示全部楼层
请教一下,OV2655 里面的OTP做什么用的,如果这个OTP写过对后续使用有没影响。
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2025-1-26 14:35 , Processed in 0.047223 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表