This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3220SF-LAUNCHXL:Arducam MT9D111不工作

Guru**** 2539500 points
Other Parts Discussed in Thread: CC3220SF

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/994089/cc3220sf-launchxl-arducam-mt9d111-not-working

器件型号:CC3220SF-LAUNCHXL
主题中讨论的其他器件:CC3220SF

我们在将 Arducam 与 CC3220SF 电路板配合使用时遇到一些问题。

使用的示例代码: github.com/.../websock_camera (另请参阅 github.com/.../websock_camera )
(我们剥离了 WebSocket 部件)

我们尝试使用逻辑分析仪监控多个信号、结果如下:

-在第一个 I2C 事务后、Artucam 一直将 I2C 数据引脚拉低。 当我们将 XCLK 时钟速度信号更改为3.75MHz (低于其数据表中公布的值)时、I2C 变得更加稳定。
-示例代码将执行一个长序列的 I2C 事务(请参阅 此处)、并停留在一个无限循环中、等待摄像机的特定响应、但摄像机返回了一个不同的值(请参阅 此处的此行)。
-然后、我们尝试跳过这个"初始化序列"并直接转到标有"image_size_240_320_preview_cmds_list"的 I2C 序列。 这似乎是可行的、使用逻辑分析仪、我们测量了有效的像素时钟信号以及 HSYNC 和 VSYNC。 通过计算 VSYNC 中的 HSYNC 数量和 HSYNC 中的像素时钟边沿数量、我们确定分辨率确实为240 x 320。
-现在来自摄像机的信号都是正确的,我们尝试用示例代码(使用 DMA)捕获图像,就像 这里所做的那样。 但是 、即使 调用了 MAP_CAMERA IntEnable、摄像机中断处理程序也不会被触发。 这就是我们停留的位置:HSYNC 和 VSYNC 信号在逻辑分析器测量时有效、但从未调用中断处理程序。 (我们检查了是否启用了一般中断:例如、SysTick 处理程序会被正确触发。)  我们还检查了应该接收摄像机数据的缓冲区、但没有数据被写入。
您对我们可以做什么有什么建议吗?

我尝试附加一些测量信号的屏幕截图、以防出现这种情况(但看起来它们的分辨率非常低)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    需要记住的一件事是隔离故障可能发生在何处。

    首先、如果看起来中断处理程序发出 DMA 传输完成的信号从未触发、那么您可以检查 DMA 控制寄存器以查看传输是否已完成、是否卡住、甚至可能是未正确初始化。

    您还可以检查 DMA 的中断状态寄存器以及摄像头外设、以查看触发了哪些中断(如果有)。

    您在这些寄存器中看到了什么?

    此致、

    Michael