OpenEdv-开源电子网

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

STM32F407 FSMC SRAM写入数据与读出的不一致

[复制链接]

3

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2016-8-25
在线时间
13 小时
发表于 2016-9-6 19:07:29 | 显示全部楼层 |阅读模式
2金钱
我自己做了块板,芯片是STM32F407,用FSMC总线与SRAM相连,地址线与数据线都是按顺序连接,如图

测试函数如下,这个函数是原子STM32F4探索者里面的,而且这个程序在开发板内测试正常,写入0~1024,单步仿真读出来数据也是0~1024完全一致,但在自己的板上就不正常了
//外部内存测试(最大支持1M字节内存测试)
//x,y:坐标
//fsize:字体大小
//返回值:0,成功;1,失败.
u8 system_exsram_test(u16 x,u16 y,u8 fsize)
{  
        u32 i=0;            
        u16 temp=0;          
        u16 sval=0;        //在地址0读到的数据                                 
       
          //LCD_ShowString(x,y,lcddev.width,y+fsize,fsize,"Ex Memory Test:   0KB");
        //每隔1K字节,写入一个数据,总共写入1024个数据,刚好是1M字节
        for(i=0; i<1024*1024; i+=1024)
        {
                FSMC_SRAM_WriteBuffer((u8*)&temp, i, 2);
                temp++;
        }

        //依次读出之前写入的数据,进行校验                  
        for(i=0; i<1024*1024; i+=1024)
        {
                  FSMC_SRAM_ReadBuffer((u8*)&temp, i, 2);
                if(i==0)sval = temp;
                else if(temp <= sval)break;//后面读出的数据一定要比第一次读到的数据大.                             
                //LCD_ShowxNum(x+15*(fsize/2),y,(u16)(temp-sval+1),4,fsize,0);//显示内存容量  
        }

        if(i >= 1024*1024)
        {
                //LCD_ShowxNum(x+15*(fsize/2),y,i/1024,4,fsize,0);//显示内存值                 
                return 0;//内存正常,成功
        }
        return 1;//失败
}

自己的板上测试结果如图在读第4次时,i=4096,temp结果理论上应该是4,但实际结果是12)


SRAM连接图

SRAM连接图

自己的电路板仿真SRAM的效果

自己的电路板仿真SRAM的效果
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11523
金钱
11523
注册时间
2014-4-1
在线时间
1310 小时
发表于 2016-9-6 21:56:09 | 显示全部楼层

不同之处是硬件。
找个焊工帮你重新焊一下。

回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2016-9-7 11:50:48 | 显示全部楼层
很大可能是硬件问题,重新焊接SRAM试试
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2019-7-3
在线时间
10 小时
发表于 2019-11-5 15:45:28 | 显示全部楼层
楼主,最后的问题是怎么解决的呢?
回复

使用道具 举报

1

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2019-9-4
在线时间
23 小时
发表于 2020-3-19 11:57:24 | 显示全部楼层
楼主  问题有解决吗  能否和我说一下呀~
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-3 18:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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