Anybody using the file system with RTX o/s, saving data to SDRAM.
Have board 32MB SDRAM on DYCS0 map the memory in none RTX mode the code runs fine and can read write to files.
In RTX mode application hangs at finit(), when application is stopped its in the DAbt_Handler.
The code none RTX is really simple
int main (void) { int i; FILE *f_p, *f_rp; char line[80]; while( 0 != finit() ); i = fformat("R:"); f_p = fopen("R:\\temp\test.txt", "w" ); if (f_p != NULL){ fputs("Example of a string in ram.\n", f_p); fclose(f_p); } //re open the file to read back f_rp = fopen("R:\\temp\test.txt", "r" ); if (f_rp != NULL){ fgets(line, sizeof(line), f_rp); fclose(f_rp); } }
The RTX version
_task void init (void){ int i; os_tsk_prio_self (100); while( 0 != finit() ); i = fformat("R:"); os_tsk_create (timer_task, 40); os_tsk_delete_self(); } int main (void) { os_sys_init(init); while(1); }
The have increased the heap size, not using microlib, Imported swi_handler (i have used RTX before and the file system but not to SDRAM, previously use SDCARD).
Just after any pointers if anybody has some to share, bang head is getting painfull.
Thanks Darren
Hi Tamir,
Yes Base address is 0xA0010 0000 and size is 0x0100 0000 sector 32
default drive RAM
In Target i have the default RAM1 start 0xA000 0000 and size 0x10000,
so i believe the files systems just follows on after the application ram usage.
Do you have experience of using RAM with RTX and the file system did it work, just trying to make sure not going mad here.
Its an LPC2468 in case your wondering.
As Per said, among others make sure that the following
EMC_SETUP EQU 1
is setup in your startup file.