微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI WIFI设计交流 > cc3200 如何存储用户数据

cc3200 如何存储用户数据

时间:10-02 整理:3721RD 点击:

如标题,3200如何使用内部ROM或者外部flash存储用户数据,数据量比较小,只有几个字节。有没有例程可以提供?

是 file_download 与 file_operations吗?

cc3200的程序是存储在SFlash中的,除了存储程序外,还可以当数据区域来用

可以用文件操作的方式,请参考例程file_operations

Yang:

谢谢你的回复,sl_FsWrite 与 sl_FsRead 函数当中有个_u32 Offset的参数,这个是存储文件地址微调吗?
另外用户是否可以知道文件存放的地址,或者flash中提供用户存储数据的地址范围?还是库自动为用户提供没有使用过的地址,用 long *lFileHandle 进行指向?

此外,file_operations 例程运行ok,但是移植到自己的程序中就有问题,编译后无误

//
// create a user file
//
lRetVal = sl_FsOpen(...);

程序执行后就一直在里面了,不向下走了,请问是什么原因。

请问你是怎么移植的呢?是把整个函数拷贝过去,还是自己写的代码?

能否贴出整块的代码出来。

if(WriteFileToDevice(&Token, &FileHandle) < 0)
{
LOOP_FOREVER();
}

if(ReadFileFromDevice(Token, FileHandle) < 0)
{
LOOP_FOREVER();
}

以及WriteFileToDevice与ReadFileFromDevice函数。

你好,请问你这个问题解决了吗?我也遇到了同样的问题?

你好,这边已经解决了,这里TI的库并不是那么强健,需要小技巧:

首先程序要检测是否存在你所需要的文件: ret = sl_FsGetInfo(filename,0,&fs_info); 查看返回值确定是否存在。

然后就可以放心的去读写了。此外一定要注意,如果是以写的形式打开文件,那么这个文件会被先擦除,等待你的写入,这边是库所决定的,我们用户改不了。

你最后一句话的意思是说:如果用读的形式打开文件会出现文件被擦除等待写入,而不是用写的形式打开文件出现文件会被擦出等待写入?

这里打错了,如果用写的形式打开文件,文件里面原先有的数据都会被清空。也就是说同一个文件想实现连续数据写入的话,需要先读出来放在RAM中,然后把新数据拼接,最后写入。

那也就是说我只是对从中读取文件的话,就用你刚才提到的那个函数先获取该文件的状态,确定存在之后读取就可以了是吧?

你好,这边已经解决了,这里TI的库并不是那么强健,需要小技巧:

首先程序要检测是否存在你所需要的文件: ret = sl_FsGetInfo(filename,0,&fs_info); 查看返回值确定是否存在。

然后就可以放心的去读写了。此外一定要注意,如果是以写的形式打开文件,那么这个文件会被先擦除,等待你的写入,这边是库所决定的,我们用户改不了。

也就是说同一个文件想实现连续数据写入的话,需要先读出来放在RAM中,然后把新数据拼接,最后写入。

对的,文件流程要对,先看是否存在,然后打开文件,读取文件,关闭文件。

可是为什么我调用查看状态信息时没有返回信息呢

比如

lRetVal = sl_FsGetInfo(MY_USER_FILE_NAME,0,&fs_info);
     if(lRetVal!=0)
     {
        Report("the file is not exit\n\r");
     }
     else
     {
        Report("the file is exit\n\r");
        lRetVal=sl_FsOpen((unsigned char*) MY_USER_FILE_NAME,FS_MODE_OPEN_READ,&ulToken,&lFileHandle);

     }

在这里按理说串口会打印其中一条信息,但是运行的时候什么都没有打印,还请指点一二

可能是串口没有被打开,InitTerm函数中有关于串口的初始化,这里需要在IDE中取消宏定义,才会使能串口。

这个问题不存在的,因为我在执行这个函数的前一句打印了一句话,是有显示的,但是到这句的时候什么现象都没有,后面的两句话都没有打印。

就是当我使用file_operation这个例子的时候,也一切正常。但是是当我在另一个自己的工程中添加了fs.h这个头文件,并且使用其中的函数时却出现了以上的情况。

编译的时候也没有错误和警告

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top