STM32硬件调试时IO读取到的数据和寄存器中数据不相符的问题?

[复制链接]
212|2
 楼主 | 2019-7-10 16:50 | 显示全部楼层 |阅读模式
项目背景:

本人发现此问题是在OV2640摄像头调试的过程中读取数据时发现的。本人根据摄像头相关时序用IO口进行模拟读取相关的数据(代码没有问题是经过验证的)。由于摄像头数据变化很快,本人采用在外部中断中读取数据。将数据读取到对应的数组里存储起来,也就是在这个位置发现的问题所在。

调试过程:

本人进行硬件仿真时,在外部中断中读取8位整组图像数据的位置进行加断点,此时以打开对应IO的寄存器进行显示。

遇到问题:

在快速执行到中断中的断点时,数组中读取到的数据和寄存器中显示的数据完全不相符。(由于没有出中断,断点的位置的数据也是一瞬间采集的)采集到的数据和寄存器中的数据完全不相符。这个事情十分不合理。但是没有理由讲通,也不知道是什么原因造成的。请大家指点一二,包括造成这个问题的方向也可以。

使用特权

评论回复
| 2019-7-10 17:48 | 显示全部楼层
外部变化太快,你读取太慢吧。
摄像头建议使用DCMI接口。

使用特权

评论回复
| 2019-7-16 10:47 | 显示全部楼层
中断也有延迟,是不是最高级中断呢,何况还受其它程序关中断的影响,应该是读慢了引起的,或者信号并不稳定,

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

关闭

热门推荐上一条 /5 下一条

在线客服 快速回复 返回顶部 返回列表