搜索
bottom↓
回复: 2

请教下,sdram 调试有数据错乱 ??

[复制链接]

出0入0汤圆

发表于 2019-3-29 21:12:58 | 显示全部楼层 |阅读模式
本帖最后由 hpdell 于 2019-3-29 21:21 编辑

请教下,sdram 调试有数据错乱 ??】




上图片中,2个框框里面的数据内容会同步发生变化,这个是怎么回事啊 ?

sdram 使用 MT48LC16M16

相关配置代码如下:

uint8_t BSP_SDRAM_Init(void)
{
  uint8_t sdramstatus = SDRAM_ERROR;
        FMC_SDRAM_TimingTypeDef SDRAM_Timing;
        SDRAM_HandleTypeDef       SDRAM_Handle;
        FMC_SDRAM_CommandTypeDef command = {0};
       
  /* SDRAM device configuration */
  SDRAM_Handle.Instance = FMC_SDRAM_DEVICE;

        SDRAM_Timing.LoadToActiveDelay    = 2;
        SDRAM_Timing.ExitSelfRefreshDelay = 7;
        SDRAM_Timing.SelfRefreshTime      = 4;
        SDRAM_Timing.RowCycleDelay        = 7;
        SDRAM_Timing.WriteRecoveryTime    = 2;
        SDRAM_Timing.RPDelay              = 2;
        SDRAM_Timing.RCDDelay             = 2;

        SDRAM_Handle.Init.SDBank             = FMC_SDRAM_BANK2;               /* 硬件设计上用的BANK2   ,使用 FMC_SDNE1, FMC_SDCKE1  */*/
        SDRAM_Handle.Init.ColumnBitsNumber   = FMC_SDRAM_COLUMN_BITS_NUM_9;  
        SDRAM_Handle.Init.RowBitsNumber      = FMC_SDRAM_ROW_BITS_NUM_13;   
        SDRAM_Handle.Init.MemoryDataWidth    = FMC_SDRAM_MEM_BUS_WIDTH_16;       
        SDRAM_Handle.Init.InternalBankNumber = FMC_SDRAM_INTERN_BANKS_NUM_4;
        SDRAM_Handle.Init.CASLatency         = FMC_SDRAM_CAS_LATENCY_3;      
        SDRAM_Handle.Init.WriteProtection    = FMC_SDRAM_WRITE_PROTECTION_DISABLE;
        SDRAM_Handle.Init.SDClockPeriod      = SDCLOCK_PERIOD;                /* FMC时钟200MHz,2分频后给SDRAM,即100MHz */
        SDRAM_Handle.Init.ReadBurst          = FMC_SDRAM_RBURST_ENABLE;       /* 使能读突发 */
        SDRAM_Handle.Init.ReadPipeDelay      = FMC_SDRAM_RPIPE_DELAY_0;      

  /* SDRAM controller initialization */

//  BSP_SDRAM_MspInit(&SDRAM_Handle, NULL); /* __weak function can be rewritten by the application */

  if(HAL_SDRAM_Init(&SDRAM_Handle, &SDRAM_Timing) != HAL_OK)
  {
    sdramstatus = SDRAM_ERROR;
  }
  else
  {
  /* SDRAM initialization sequence */
    BSP_SDRAM_Initialization_sequence(&SDRAM_Handle, &command);
    sdramstatus = SDRAM_OK;
  }

  return sdramstatus;
}

MT48LC16M16 相关资料



我的行列设置应该是没有错的吧 ???













本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入57汤圆

发表于 2019-3-29 21:21:25 来自手机 | 显示全部楼层
没看你代码,是不是偏移量定成了int8类型的了

出0入0汤圆

 楼主| 发表于 2019-3-29 21:23:24 | 显示全部楼层
本帖最后由 hpdell 于 2019-3-29 21:26 编辑
leafstamen 发表于 2019-3-29 21:21
没看你代码,是不是偏移量定成了int8类型的了



没有,测试代码

#define  SDRAM_BASE_ADDR  0xd0000000

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-18 21:04

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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