sachingole wrote on Monday, June 05, 2017:
Hi Hein,
Thanks a lot for your valueable time and prompt responses. Finally things started working and I am able to create ramdisk with size 50KB.
Following are logs :-
Init boot is done
FF_Partition:
ffconfigMIN_CLUSTERS_FAT16 = 32
FF_Format: Secs 100 Rsvd 1 Hidden 0 Root 8 Data 91
FF_Format: SecCluster 1 DatSec 89
DataClus 89 ulClusterBeginLBA 3
FF_Format: Clearing entire FAT (2 x 1 sectors):
FF_Format: Clearing done
FF_Format: Clearing root directory at 00000003: 8 sectors
FF_RAMDiskInit: FF_Format:
FF_Part: no partitions, try as PBR
FF_RAMDiskInit:
FF_Mount:
FF_FS_Add: Table full '/ram' (max = 1)
Reading FAT and calculating Free Space
pxIOManager->xPartition.ucType = 11
Partition Nr 0
Type 11 (FAT16)
VolLabel 'MY NAME F'
TotalSectors 100
SecsPerCluster 1
Size 0 MB
FreeSize 0 MB ( 100 perc free )
I have 3 task creation code, some either one combination works. Is is it because of memory constraints.
Either this task works
xTaskCreate( prvRamDiskTask, "RAMDISKTASK", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_RAMDISK_TASK_PRIORITY, NULL );
Or following 2 task works
xTaskCreate( prvQueueReceiveTask, "Rx", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_RECEIVE_TASK_PRIORITY, NULL );
xTaskCreate( prvQueueSendTask, "TX", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_SEND_TASK_PRIORITY, NULL );
- If I have both then it doesnt work.
Also I can see following issues in test code.
2. In file CreateAndVerifyExampleFiles.c inside function prvCreateDemoFileUsing_ff_fputc
configASSERT( strcmp( pcRAMBuffer, pcFileName ) == 0 );
This fails because
pcRAMBuffer = /SUB1/SUB2
and pcFileName = //SUB1/SUB2
- Looks like ff_truncate() fails,
pxFile = ff_truncate( pcTestFileName, 1000L );
ff_fclose( pxFile );
ff_stat( pcTestFileName, &xStat );
configASSERT( xStat.st_size == 1000L );
I can see that xStat.st_size is 0
- I have observed that prvTest_ff_findfirst_ff_findnext_ff_findclose() inside this funtion it iterate using ff_findnext( pxFindStruct ) but it returns reaiming 7 but it doesnt return “…”
Following is expected to return
const char *pcExpectedRootFiles[] =
{
".",
"..",
"SUB1",
"root001.txt",
"root002.txt",
"root003.txt",
"root004.txt",
"root005.txt"
};