• AT24C512中数据的文件系统化管理
  • AT24C512中数据的文件系统化管理

     AT24C512中数据的文件系统化管理
     
      在由单片机构成的数据采集系统及智能仪器仪表当中,往往有大量数据要保存。随着测控系统数字化的发展,人们对数据存储提出了更高的要求,因而用于存储数据的存储器容量也越来越大。但是,在增大数据存储量的同时,人们也希望能更便捷高效地操作其中的数据,即像PC机上管理数据一样简单易行。然而,单片机以及用于保存数据的芯片本身并没有提供这种功能,为此,需要开发一种用于管理单片机数据的有效方法。本文在吸取PC机文件管理思想的基础上,以AT24C512为例,构造了一种类似于文件系统的用于管理单片机数据的方法,大大提高了数据操作的效率。
     
      为了管理数据方便,把AT24C512的物理空间划分为1024个逻辑页,每页64字节。按照文件系统的需要,把AT24C512的全部空间划分为三部分:数据区,占用最后的960页;页面分配区,占用中间的30页;目录区,占用前面的24页。
      AT24C512最后面的960页作为数据区,其序号从0开始编号。该区作为文件数据的存储区域,在存放文件数据时,从该区内分配若干页,每次存储一页。
      页面分配区记录了数据区每一页的分配情况。该区中每2字节组成一个记录项,共有960个记录项。记录项从0开始编号,每一个记录项对应着数据区相应页的使用情况。
      在实际应用中,一个文件的数据往往大于64字节,这样一个文件的数据区中需占用多个页。但随着文件的增删,数据区的空闲空间出现不连续的状况,因而数据区的分配并不能保证连续,而是根据当前数据区的使用情况来决定某一部分文件内容应该放在哪一页上。为了把这些分散的数据有机连接起来,把记录项按照链表的形式组织起来,每个文件对应着一个链表,链表中每个结点为一个记录项,记录项的内容为下一个记录项的编号,最后一个记录项的内容为0FFFFH,表示链表结束。把这些记录项对应的页面连接起来就构成了一个文件的完整数据。
      目录区用来存储文件的主要信息。根据这些信息可以知道文件名、文件生成的日期以及文件的数据在数据区中的存储首地址。文件目录项的结构如下:
      ①文件名。文件名由4字节双BCD码构成,在生成该文件时由键盘输入数字作为文件名,并由程序自动把它们转换成双BCD码。在需要显示时,再把它们分解成8字节单BCD码供显示。
      ②文件生成日期。占用4字节,按照双BCD码的格式存储,如20H、04H,03H、20H则表示2004年3月20日。日期可由键盘输入或通过时钟芯片获取。
      ③文件首地址。指示在给该文件分配空间进,分配给它的第一个数据页的序号,即它对应的链表的第一个记录项的编号。
      目录区共占用24页。由于每个文件信息只占用10字节,则在此文件系统中,最多可存储153个文件。目录区、页面分配区和数据区的逻辑关系如图3所示。
      以图3为例,说明该文件系统如何获取文件数据:
      ①在目录区中根据文件名找到包含该文件名的目录项,从而获取该文件的属性及其首地址。如文件“00000103”的日期为2003年11月24日,其首地址为0005H。
      ②根据文件的首地址,在页面分配区中找到该记录项0005H。在该记录项中存储的值为0007H,可知该文件的下一记录项为0007H。
      ③同理,可得到文件的后续记录项为0008H、0009H、000BH,直到从000BH记录项中读到0FFFFH。此时表示这是最后一项,不需再继续找后继项了。
      ④至此,可知文件“00000103”的数据分为5部分存储在数据区中,分别存储在0005H、0007H、0008H、0009H、000BH页中。只要按序到数据中读取这些中的数据,并连接起来,就形成了该文件的全部数据。
     
      添加文件的主要工作是为新文件寻找存储空间,其寻找步骤如下:
      ①在目录区中寻找空位置。若目录区已经存满,则向用户报告并中止程序;否则,记录该位置。
      ②计算文件数据需占用的页面数,记为MyPage。
      ③在页面分配区中寻找并统计标志为空的记录项,其内容为0EEEEH。若其数目小于MyPage,则向用户报告,并中止程序。
      ④在MyFileA位置填写文件名和日期,并把找到的第一个空记录项的序号填入,作为该文件的首地址。
      ⑤依次在找到的空记录项内填入下一空记录项的序号,最后一个空记录项填入0FFFFH。
      ⑥从文件首地址开始,按照文件链表依次把数据写入数据区相应的页。
      
      为了实现实时测控系统数据的高效管理,按照PC机文件系统的思想,对测控系统中的AT24C512设计了一个简单的文件系统,包括系统格式化、添加文件、删除文件等功能,在大数据量的测控系统中得到了成功应用。该文件系统稍加修改就可应用于不同容量的存储芯片,具有广泛的应用价值。

    更多型号芯片解密可致电北京致芯科技24小时服务热线:13466687255 010-57436217

    点击这里给我发消息 点击这里给我发消息

      Copyright © 2004-2012 致芯科技 版权所有