Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

USB superspeed peripherals Forum Discussions

YaXi_4492421
Level 2
Level 2
10 replies posted 10 questions asked 5 replies posted

我使用FX3/CX3(CYUSB3065) 通过DMA的方式来摄像,然后用一组 I2C来控制摄像的配置,

同时这组I2C还控制另一颗芯片,这颗芯片需要不定时的访问,

然后线程就不再被调起了(摄像也停止了),我在使用I2C 的前后加入CyU3PMutexGet及CyU3PMutexPut也没有效果。

请问这是什么原因,有办法解决吗?

0 Likes
1 Solution
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

您好,根据我在我的demo板的上的测试,在OV5640的示例固件中添加timer,使用I2C读取eeprom中的数据,并不会影响摄像头工作。

View solution in original post

0 Likes
5 Replies
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

你的另一个芯片和摄像头芯片的地址不同吗?理论上来说发送不同地址的I2C指令不会互相产生影响。

0 Likes

不一样,但是共用I2C总线。摄像一直工作,然后另一颗芯片是间隔读取,当读取第二颗芯片的时候,摄像会卡顿甚至卡死(摄像:1080P,USB3.0;读取第二颗芯片:100ms读取一次)。请问下这大概是什么原因啊?或者怎么才能避免啊?

0 Likes
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

您好,根据我在我的demo板的上的测试,在OV5640的示例固件中添加timer,使用I2C读取eeprom中的数据,并不会影响摄像头工作。

0 Likes

您好!

您是否可以把您这个测试代码给我一份,我比较一下啊?

(我这边没有权限发代码。不然我就贴出来了)

非常感谢您的帮助

0 Likes
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

请参考附件

0 Likes