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

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


ROM:\路径\文件名",“打开模式”)就可以了。当打开文件时,先检查文件表中是否存在该文件。如果没有,则在Flash文件表中查找是否存在该文件。如果存在,则打开;如果没有,则新建这样一个文件,同时打开该文件。随后就可以进行文件的读写、追加、属性修改等操作。

该Flash文件系统的几个技术关键点:

①利用RTS.LIB(TI附带有源代码RTS.SRC)的高级层文件操作功能。该库已经按照ANSI C标准处理了高层文件应用问题。我们可以如同在上位机上编程一样使用各种文件操作函数,不同的是将盘符改为FlashROM盘符。例如,将fopen("C:\read.txt","r")改为fopen("FlashROM:\read.txt","r")。用这种模式操作Flash,的繁琐时序处理和扇区擦除等重复性问题,可以将精力集中到应用编程上来。

②用自设计的Low Level级代码接管了RTS.LIB的低层处理。前述的Flash文件信息表是核心,只有通过该表才能知道Flash中究竟有什么,在哪里操作。当在API层操作文件时,高层函数将调用相应的底层处理属数,在Low Level判断文件是否打开,是否可读写等属性。同时为该文件分配一个内缓冲区,所有对该文件的操作先操作缓冲区,即流操作。当缓冲区满时,调用的操作先操作缓冲区,即流操作。当缓冲区满时,调用Device Level级函数,将数据写入Flash中。同样,读取的时候,是先读取一个扇区内容,处理完毕后再读取下一扇区内容。

操作键盘等其它外设相对Flash要简单得多,不用设计文件信息表。执行两个步骤就可以使用。一是加入设备,调用add_device(……)函数,填入设备名;二是编写设备驱动函数,将对应的函数名作为参数传入add_device()中。在这里要说明的是,不同设备、同样的操作名其实际含义是不同的。如对键盘打开一个字符,则意味着读入一个字符,因此在实际中应用灵活处理。

结语

该Flash文件系统实现了基本的文件读写功能,但是还有些不足地方:文件共享问题没有解决,在掉电的情况下可能导致文件丢失。由于我们研制这个Flash系统的目的在于方便编程、调试;同时在我们的应用领域(电力系统继电保护)中,掉电的几率非常低,存储的文件主要是整定值、控制字(修改不多)和故障滤波记录。这些数据即使丢失也不会造成灾难性的后果,故该系统在整体

上满足我们的应用需求。


《基于CC/CCS的Flash文件系统设计(第4页)》

本文链接地址:http://www.oyaya.net/fanwen/view/173041.html

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