你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32H7 DCMI DMA传输错误

[复制链接]
j2610127 提问时间:2018-8-14 05:13 /
最近在尝试用NUCLEO板子读取DCMI的数据,现在DCMI的HSYNC和VSYNC中断都能正常进入,但是DMA传输会出错。 调试发现DMA的NDTR减少了1,然后TEIF被置1了,也就是在传输第一个数据的时候就出现了传输错误。

工程文件是用CubeMX生成的,MCO2设置成了10MHz的XCLK输出,PCLK和HSYNC,VSYNC似乎都没有问题。程序也没有使用缓存,缓冲区对齐也尝试过了,还是会有同样的问题。看手册说DMA传输错误是下面这几种情况,但还是找不到问题在哪。

The transfer error interrupt flag (TEIF) is set when:
• A bus error occurs during a MDMA read or a write access
• The address alignment does not correspond to the data size
• The block size is not a multiple of the data size (for source and/or destination): this error is activated on the last transfer and the error address points to the last transfer (which cannot be done)

各位有遇到过这种错误吗?

DCMI_DMA.zip (1.73 MB, 下载次数: 48)
收藏 评论3 发布时间:2018-8-14 05:13

举报

3个回答
feixiang20 回答时间:2018-8-15 00:24:32
总线错误,地址数据不符,地址指针错误,传输方向,使能DCMI时钟,DCMI GPIO 配置,DCMI 配置等几种情况你都一一检查过可能性了吗?
可能是设置DMA传输有误,DCMI接口接收到数据后通知DMA需要DCMI_CaptureCmd(ENABLE)来设置 CR寄存器的CAPTURE位。再找找吧。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

zhang5055258 回答时间:2019-6-17 15:22:45
我也遇到类似的DMA错误,请问楼主的问题解决了吗?
你若安好_清风徐来 回答时间:2019-6-18 10:21:47
内存地址是否有问题?DMA开启就需要修改内存地址哦    我上传我的代码  你比较一下  使用的是STM32CubeMX 5.0

23.DCMI_OV2640.zip

下载

5.75 MB, 下载次数: 206, 下载积分: ST金币 -1

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版