硬汉嵌入式论坛

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

[ADC] stm32H743内存未知错误,数组覆盖了

[复制链接]

7

主题

13

回帖

34

积分

新手上路

积分
34
发表于 2019-11-8 14:21:39 | 显示全部楼层 |阅读模式
#define ADCGetNum 1600
struct ADCtype              //ADC数组处理结构体
{
    u16 in_one[ADCGetNum];  //采集数组一
          u16 in_two[ADCGetNum];  //采集数组二
          u16 out_one[ADCGetNum]; //转换输出数组一
          u16 out_two[ADCGetNum]; //转换输出数组二
          u16 ExchangeFlag;       //数组采集切换标志位
          u16 one_done;           //数组一处理标志位
          u16 two_done;           //数组二处理标志位
};
struct ADCtype ADCGetValue;
这样定义了一个结构体,然后发现out_one在没有任何操作的时候竟然有值,将采集程序进行屏蔽试验后,竟然是in_two中的值,而且将ADCGetNum定义成3200就没事,或者在in_two跟out_one中间再定义一个数组就没事。好奇怪啊
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2019-11-8 14:26:03 | 显示全部楼层
上电后,手动清空下即可。

注意此贴的问题

STM32H7的D2域SRAM使用注意事项
http://www.armbbs.cn/forum.php?mod=viewthread&tid=94833
回复

使用道具 举报

7

主题

13

回帖

34

积分

新手上路

积分
34
 楼主| 发表于 2019-11-8 14:45:18 | 显示全部楼层
eric2013 发表于 2019-11-8 14:26
上电后,手动清空下即可。

注意此贴的问题

我改了之后不行,这个数组是个动态刷新的值,紧挨着他的上一个数组不变他就不变,上个数组改变他就改变
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2019-11-8 14:49:40 | 显示全部楼层
奔跑追梦 发表于 2019-11-8 14:45
我改了之后不行,这个数组是个动态刷新的值,紧挨着他的上一个数组不变他就不变,上个数组改变他就改变

那我知道怎么回事了,你之前发的这个老问题,你就没有整明白。

求助,STM32H743ADC+DMA双缓冲疑问
http://www.armbbs.cn/forum.php?m ... 5461&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

7

主题

13

回帖

34

积分

新手上路

积分
34
 楼主| 发表于 2019-11-8 14:55:45 | 显示全部楼层
eric2013 发表于 2019-11-8 14:49
那我知道怎么回事了,你之前发的这个老问题,你就没有整明白。

求助,STM32H743ADC+DMA双缓冲疑问

不好意思,都改好了,上一次那个问题是测试的时候,串口发送的位置放的不对,这一次这个是填充数组越界了,实在是不好意思,谢谢你这么及时的答复,非常感谢
回复

使用道具 举报

7

主题

13

回帖

34

积分

新手上路

积分
34
 楼主| 发表于 2019-11-8 14:56:48 | 显示全部楼层
eric2013 发表于 2019-11-8 14:49
那我知道怎么回事了,你之前发的这个老问题,你就没有整明白。

求助,STM32H743ADC+DMA双缓冲疑问

感谢,感谢回复的好及时啊,谢谢
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-15 23:21 , Processed in 0.173633 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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