硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1401|回复: 4
收起左侧

[ADC] STM32H750 ADC DMA为啥只有第一个有数据,后面都是0,先谢谢硬汉大哥和坛友了

[复制链接]

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2022-5-31 17:39:52 | 显示全部楼层 |阅读模式
STM32H750VBT6 用ADC1 DMA采集单通道数据,只有第一个是非0,后面都是0,大家帮忙看看咋回事,自己搞了3天了。那个DMA采样完成的中断函数是能进去,但就是数据不对。

工程是STM32CUBEMX生产的,如果不用DMA模式,用while循环读取 EOC flag标志能正常工作,但是用DMA就是不行。双通道交替采样也试了,现象一样。
1. 看了DMA控制器RAM地址权限问题。
2. 看了DMA Dcache刷新问题。
3. 也试了各种不同的CUBEMX ADC和DMA设置



都不行。。。
麻烦大家伙帮忙看看。

ADC DMA除了第一个不是0,其他都是0,崩溃

ADC DMA除了第一个不是0,其他都是0,崩溃

CUBEMX ADC设置

CUBEMX ADC设置

CUBEMX ADC DMA设置

CUBEMX ADC DMA设置

生成的代码

生成的代码
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
发表于 2022-5-31 18:51:08 | 显示全部楼层
你的工程主RAM空间用的是那个,不会是DTCM吧。
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
 楼主| 发表于 2022-5-31 19:28:37 | 显示全部楼层
eric2013 发表于 2022-5-31 18:51
你的工程主RAM空间用的是那个,不会是DTCM吧。

应该不是的,用的RAM1
RAM分配.JPG
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2023-9-19 02:29:57 | 显示全部楼层
我也是碰到這個問題, 怎麼破?
只是H723, H750和H743會這樣, H7B0沒事
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2023-9-21 17:41:31 | 显示全部楼层
先关闭Cache试试,如果数据正确了,说明是数据没有转存出来
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-29 07:10 , Processed in 0.164040 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表