OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3425|回复: 4

操作指针,向SDRAM地址写值问题

[复制链接]

6

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2018-12-7
在线时间
45 小时
发表于 2019-1-25 17:07:18 | 显示全部楼层 |阅读模式
5金钱
外部SDRAM地址为0XC0000000 ,16位, 用如下方式读写均正常
void FMC_SDRAM_WriteBuffer(u8 *pBuffer,u32 WriteAddr,u32 n)
{
for(;n!=0;n--)
{
  *(vu8*)(Bank5_SDRAM_ADDR+WriteAddr)=*pBuffer;
  WriteAddr++;
  pBuffer++;
}
}


现使用以下方式操作指针,向SDRAM地址写值:

#define SRAM_BASE_ADDR          0XC0000000UL //SDRAM开始地址

定义两个指针如下:
struct struct_sram* sram_ptr = (struct struct_sram*)SRAM_BASE_ADDR;
struct struct_report* report_tail;

struct struct_sram{
    struct struct_report report_buf[REPORT_SIZE];
};

struct struct_report{
    unsigned short len;
    char buf[REPORT_BUF_SIZE];
};

#define REPORT_SIZE         1000
#define REPORT_BUF_SIZE     300



主函数内,初始化report_tail指针后,对report_tail指针进行偏移操作
report_tail = sram_ptr->report_buf;
while(1)
{
     report_tail += 1;                 
  if (report_tail >= sram_ptr->report_buf+REPORT_SIZE)      
   report_tail -=REPORT_SIZE;  

delay_ms(1000);
}

单步调试时
report_tail+=1运行之后,程序就会挂掉,
这是什么原因,求大神指点




正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

14

主题

204

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2443
金钱
2443
注册时间
2017-9-13
在线时间
559 小时
发表于 2019-1-26 09:17:40 | 显示全部楼层
我看着没什么问题,帮顶
回复

使用道具 举报

6

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2018-12-7
在线时间
45 小时
 楼主| 发表于 2019-1-29 15:25:45 | 显示全部楼层
HCHDaLeiGe 发表于 2019-1-26 09:17
我看着没什么问题,帮顶

检查这段代码确实没问题,映射指针从SDRAM读数据时候挂掉的
回复

使用道具 举报

3

主题

259

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2317
金钱
2317
注册时间
2016-12-2
在线时间
354 小时
发表于 2019-1-29 17:08:37 | 显示全部楼层
这件事有空再说 发表于 2019-1-29 15:25
检查这段代码确实没问题,映射指针从SDRAM读数据时候挂掉的

SDRAM确定可以用吗?
读数据的地方设个断点, 读取0xC0000000这边的memory, 尝试直接用debugger写入, 看看是否可以正常写入, 且可以正常读取写入的数据.
回复

使用道具 举报

6

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2018-12-7
在线时间
45 小时
 楼主| 发表于 2019-1-29 18:48:28 | 显示全部楼层
sammy902583 发表于 2019-1-29 17:08
SDRAM确定可以用吗?
读数据的地方设个断点, 读取0xC0000000这边的memory, 尝试直接用debugger写入, 看 ...

SDRAM可以用,确定用可以读写,用指针从SDRAM中取不了成片数据,会挂掉
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 17:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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