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

[复制链接]
1487|4
 楼主| 大山黑科技 发表于 2019-7-10 16:50 | 显示全部楼层 |阅读模式
项目背景:

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

调试过程:

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

遇到问题:

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

评论

很好的资源,学习啦~~  发表于 2023-9-17 08:36
aozima 发表于 2019-7-10 17:48 | 显示全部楼层
外部变化太快,你读取太慢吧。
摄像头建议使用DCMI接口。
ayb_ice 发表于 2019-7-16 10:47 | 显示全部楼层
中断也有延迟,是不是最高级中断呢,何况还受其它程序关中断的影响,应该是读慢了引起的,或者信号并不稳定,
yunbujing 发表于 2019-11-28 16:03 | 显示全部楼层
学习一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

7

帖子

0

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