保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

基于CC/CCS的Flash文件系统设计


unsigned int filebufnum;//文件缓冲区中已被/写的字节数

unsigned int fileCurpos;//文件读写的当前位置

unsigned int filesize;//文件的大小

}FlashFILE;

3.4 Device Level驱动函数

SST39VF400A标准设备级驱动函数如下:

void Program_One_Word(WORD SrcWord,WORD far Dst){/*写入一个字*/

WORD far *Temp;WORD far*SourceBuf;WORD far*DestBuf;

Int Index;DestBuf=Dst;

Temp=(WORD far *)0xC0005555;/*设置地址为C000:555h*/

*Temp=0xAAAA; /*写数据0xAAAA到此地址*/

Temp=(WORD far *)0xC0002AAA;/*设置地址为C000:2AAAh*/

*Temp=0x5555;/*写数据0x5555到此地址*/

Temp=(WORD far*)0xC0005555;/*设置地址为C000:5555h*/

*Temp=0xA0A0;/*写数据0xA0A0到此地址*/

*DestBuf=SrcWord;/*传送字节到目的地址*/

Check_Toggle_Ready(DestBuf);/*等待TOGGLF位准备好*/

}

源代码见网站fanwen.oyaya.net收集整理。

3.5 Flash文件系统的工作流程

在使用Flash文件系统前,先将FlashROM设备加入设备表中(最开始假设Flash中没有任何文件),读入Flash文件表。下面简述系统工作流程。

(1)加入FlashROM设备

add_device("FlashROM",_MSA,flash_open,flash_close,flash_read,flash_write,flash_lseek,
flash_unlink,flash_rename);

其中flash_open、flash_close、flash_read、flsh_write、flash_lseek、flash_unlink、flash_rename是最底层的

flash驱动函数名称。针对不同的Flash,需要不同的驱动函数。

int flash_open(char *path,unsigned flags,int fno);

int flash_close(int fno);

int flash_read(int fno,char *buffer,unsigned count);

int flash_write(int fno,char *buffer,unsigned count);

(2)初始化文件系统

在使用Flash前,必须初始化。初始化临时文件缓冲区,将Flash的各种信息读入到系统中,如Flash的大小,存在的文件的名称、大小、建立日期等,这样系统才能正确使用Flash.

Init_eFS();/*初始化文件系统函数*/

(3)执行各种文件操作

如果要在Flash上打开一个文件,执行fopen("Flash

《基于CC/CCS的Flash文件系统设计(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/173041.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。