2009-09-02 05:16 AM
STM3210E-EVAL External Data RAM
2011-05-17 04:22 AM
I'm trying to use the external RAM as a spot for data with the example code (SRAM_DataMemory). When I single step the code, I get 0xFF's for all the data here in Tab[] after the loop.
for (Index = 0; Index { Tab[Index] =Index; } The linker script is working in ths case but it is not accessing the external memory. In the reset handler I have: //#ifdef DATA_IN_ExtSRAM /* FSMC Bank1 NOR/SRAM3 is used for the STM3210E-EVAL, if another Bank is required, then adjust the Register Addresses*/ /* Enable FSMC clock */ *(vu32 *)0x40021014 = 0x00000114; /* Enable GPIOD, GPIOE, GPIOF and GPIOG clocks */ *(vu32 *)0x40021018 = 0x000001E0; /* --------------- SRAM Data lines, NOE and NWE configuration ---------------*/ /*---------------- SRAM Address lines configuration --------*/ /*---------------- NOE and NWE configuration ---------------*/ /*---------------- NE3 configuration ------*/ /*---------------- NBL0, NBL1 configuration ----------------*/ *(vu32 *)0x40011400 = 0x44BB44BB; *(vu32 *)0x40011404 = 0xBBBBBBBB; *(vu32 *)0x40011800 = 0xB44444BB; *(vu32 *)0x40011804 = 0xBBBBBBBB; *(vu32 *)0x40011C00 = 0x44BBBBBB; *(vu32 *)0x40011C04 = 0xBBBB4444; *(vu32 *)0x40012000 = 0x44BBBBBB; *(vu32 *)0x40012004 = 0x44444B44; /*---------------- FSMC Configuration -----*/ /*---------------- Enable FSMC Bank1_SRAM Bank -------------*/ *(vu32 *)0xA0000010 = 0x00001011; *(vu32 *)0xA0000014 = 0x00000200; //#endif /*DATA_IN_ExtSRAM*/ I folowed everything in the readme for the RIDE7 software and even commented the ifdef. Are the registers just not set up properly? Any ideas? Thanks in advance. [ This message was edited by: robinsm on 02-09-2009 14:45 ]2011-05-17 04:22 AM
I cannot inspect that these values are changing while single stepping, Why not? I just see A0000010: -- -- -- -- --...
*(vu32 *)0xA0000010 = 0x00001011; *(vu32 *)0xA0000014 = 0x00000200;