搜索
bottom↓
回复: 2

LPC1788 单片SDRAM问题256Mb 16*16,如何写32位数据?

[复制链接]

出0入4汤圆

发表于 2015-1-17 18:13:37 | 显示全部楼层 |阅读模式
#define SDRAM_BASE_ADDR        0xA0000000
#define SDRAM_SIZE                         0x2000000   
    config.ChipSize = 256;
    config.AddrBusWidth = 16;
    config.AddrMap = EMC_ADD_MAP_ROW_BANK_COL;
    config.CSn = 0;
    config.DataWidth = 16;
    config.TotalSize = SDRAM_SIZE;

    config.CASLatency= 2;
    config.RASLatency= 1;
    config.Active2ActivePeriod = 10;
    config.ActiveBankLatency =2;
    config.AutoRefrehPeriod = 10;
    config.DataIn2ActiveTime = 5;
    config.DataOut2ActiveTime = 5;
    config.WriteRecoveryTime = 2;
    config.ExitSelfRefreshTime = EMC_NS2CLK( 70);
    config.LoadModeReg2Active = 2;
    config.PrechargeCmdPeriod = 3;
    config.ReadConfig = 1;  /* Command delayed strategy, using EMCCLKDELAY */
    config.RefreshTime = EMC_SDRAM_REFRESH( 64);
    config.Active2PreChargeTime = 7;
    config.SeftRefreshExitTime = EMC_NS2CLK( 70);
    DynMem_Init(&config);

做如上初始化,然后分别定义8,16,32位的指针从0xA0000000开始写数据并读出来验证,8和16位读写没有问题,但是写32位的数据就出错,
移植了FATFS之后,把SD卡的操作放在SDRAM中,就出错:SD中没有有效的FATFS卷
#define FATFS_BASEADDR        ((uint32_t)SDRAM_BASE_ADDR + 0x100000)
#define  file_BASEADDR        ((uint32_t)SDRAM_BASE_ADDR + 0x200000)
#define ftemp_BASEADDR        ((uint32_t)SDRAM_BASE_ADDR + 0x300000)
#define fatbuf_BASEADDR        ((uint32_t)SDRAM_BASE_ADDR + 0x600000)

FATFS *fs[_VOLUMES];/
FIL *file;                          /
FIL *ftemp;                         
UINT br,bw;                       
FILINFO fileinfo;
DIR dir;                         
uint16_t *fatbuf;               


uint8_t exfuns_init(void)
{
        fs[0]=(FATFS*)FATFS_BASEADDR;       
  file=(FIL*)file_BASEADDR;               
        ftemp=(FIL*)ftemp_BASEADDR;               
        fatbuf=(uint16_t*)fatbuf_BASEADDR;                               
        return 0;
}
求给个思路

出0入4汤圆

 楼主| 发表于 2015-1-17 20:24:42 | 显示全部楼层
自己顶一个

出0入0汤圆

发表于 2015-1-29 14:47:01 | 显示全部楼层
这个sdram配置好以后就是一个地址区域,可以直接寻址的。所以你不用思考怎么存32bit数据了,直接指针指向你要的地址,直接赋值就好了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-29 22:04

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

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