keil自带的文件系统RL-FLASHFS调试完成,使用AT45DB321
本帖最后由 闪客 于 2015-5-28 15:20 编辑硬件:单片机:LPC1766 SPI FLASH: AT45DB321D
keil自带的实时操作系统组件也比较丰富,含有RL-USB,RL-CAN,RL-FlashFS,RL-TCPnet
我主要使用了CAN组件和文件系统。
要使用文件系统也很简单,步骤如下:
1. 包含文件:
2.修改SPI_LPC17XX.C底层驱动文件,我使用的是SSP1
3.修改FS_SPI_FlashPrg中的__DRV_ID结构体的各个函数。
测试代码:初始化
printf("init file system...");
if(finit ("S") == 0) /* 初始化文件系统 */
printf("OK\n\r");
else
printf("NG\n\r");
使用文件系统
__task void File_System(void)
{
unsigned char read_data;
FILE *fin;
FINFO info;
for(;;)
{
fin = fopen("供暖机组运行数据20150528.txt","w");
if(fin != NULL)
{
fputs("出口压力",fin);
fclose(fin);
}
// if(ffind("供暖机组运行数据20150528.txt",&info) == 0)
// {
fin = fopen("供暖机组运行数据20150528.txt","r");
if(fin != NULL)
{
fread(read_data,sizeof(unsigned char),10,fin);
printf("供暖机组运行数据20150528.txt's data is: %s\r\n",read_data);
}
fclose(fin);
// }
os_dly_wait(10);
}
}
恭喜楼主,对rl库有更深的认识,我也下载下来学习学习 myxiaonia 发表于 2015-5-28 15:39
恭喜楼主,对rl库有更深的认识,我也下载下来学习学习
这个放下过一段时间,今天终于调试完成了。
使用RTX还是仅仅限于用户级,至于内部源代码和RL-FLASHFS的源代码还是没有深入研究。
rl_flashfs刚刚入门,正在测试各个功能。
落下一个文件,使用这个库,还需要这个文件
提示网页不存在,下载不了1.15KB的文件 starting 发表于 2015-5-28 16:54
提示网页不存在,下载不了1.15KB的文件
我测试了一下,能下载。
闪客 发表于 2015-5-28 17:01
我测试了一下,能下载。
我换了个浏览器就支持了,chrome的问题。谢谢了 下载下来学习学习,谢谢! keil自带的文件系统有什么优势啊? RL-FLASH可以用中文名? huike 发表于 2015-5-30 09:18
RL-FLASH可以用中文名?
可以。
也可以写入中文。 闪客 发表于 2015-5-30 09:24
可以。
也可以写入中文。
在电脑上查看时能显示吗?
电脑好像是用UNICODE编码,而RLFLASH是用GB2312的。
除非像FSFAT一样加译码。 huike 发表于 2015-5-30 09:28
在电脑上查看时能显示吗?
电脑好像是用UNICODE编码,而RLFLASH是用GB2312的。
除非像FSFAT一样加译码。 ...
我现在还没实现从电脑上查看。
需要usb device功能。 现在测试这个文件系统,能够读出flash大小,写入文件,打开文件
但是查找文件有点疑惑,ffind来查找文件,只有上电第一次能找到,后面再查找的时候返回值就不对了,但是仍旧能打开文件。 我用RL库让AT91SAM9260读写了U盘,但是中文文件名总是不能正确显示,什么原因? 谢谢楼主分享 正想搞flash,谢谢! 这个文件系统支持eMMC吗? mark huike 发表于 2015-5-30 09:18
RL-FLASH可以用中文名?
我很遗憾的告诉大家,rl-flash并不支持中文名,我从实际例子分析得出了这个结论
然后 keil官网上还有keil先生的亲自回复Whether the RL-FLASHFS support Chinese file name
MDK MIDDLEWARE: Are UTF-8 characters in Filenames supported明确表明只支持ascii码转换 不知反复读写速度怎样?
页:
[1]