CC3200对外部1M Flash中文件的操作 的问题
我需要在外部flash中储存一个大概500k的文件,并且需要对它进行读写操作。
例如,我从网络上获得文件保存在flash中,发现超过69000个字节左右的时候,就报错了。
于是我用C:\TI\CC3200SDK_1.0.0\cc3200-sdk\example\file_operations的例程测试,把原来限制的64Kbyte 改成69Kbyte,结果出现同意的现象。
sl_FsWrite的返回值是 -15,
进一步查得应该是宏:#define SL_FS_ERR_OFFSET_OUT_OF_RANGE (-15)
你们那个文件系统的操作函数,是不是有大小限制?我现在必须要保存大于64K字节的文件,请问这应该怎么办?
iLoopCnt * sizeof(gaucOldMacDonald) = 53 * 1298 = 68794
sl_FsWrite failed! -15
sl_FsClose ! 0
Error [-2006] at line [362] in function [WriteFileToDevice]
请问你的这个问题有解决掉了吗?
解决了。
我这边创建超过300KB的文件就过不去,小于300KB就可以,是怎么回事,求解,谢谢!
lRetVal = sl_FsOpen((unsigned char *)USER_FILE_NAME,
FS_MODE_OPEN_CREATE(1024*400, _FS_FILE_OPEN_FLAG_COMMIT|_FS_FILE_PUBLIC_WRITE), ulToken, lFileHandle);
if(lRetVal < 0)
{
//
// File may already be created
//就死在这里
lRetVal = sl_FsClose(*lFileHandle, 0, 0, 0);
ASSERT_ON_ERROR(lRetVal);
}