原创 在Nios II中使用Zip ReadOnly File System【转】

2012-12-26 15:50 2130 6 6 分类: FPGA/CPLD

原文出处:http://cqulpj.blogbus.com/logs/68406647.html 

在使用Nios II IDE进行设计时,有时候需要用到文件系统,如果只是进行有文件格式的数据读写的话,可以考虑用之前说的有文件系统的SD卡读写设计,但是如果你必须要用fopen,fread, fscanf等函数的话(比如找的别人的源代码,不想修改,或者是为了设计方便等原因),那就比较困难了,不过Nios II IDE中提供了一种方法,称为zip_readonly_filesystem,通过这种方法可以将小文件烧到Flash中,然后用fopen、fread、fscanf等进行读操作,但是注意只能进行读操作,前言到此为止,下面讲述步骤:

  1. 建立Nios II工程,假设工程名为test_zofs,创建后相应的工程目录会有test_zofs和test_zofs_syslib两个目录,将要读的文件如1.txt、2.txt、3.bmp用winzip或winrar等软件打包成zip格式(注意不能压缩,只是打包,在winrar中选择格式为zip,压缩方式选择存储),假设打包后的文件名为files.zip,将该文件(files.zip)放到test_zofs_syslib目录中,然后再Nios IDE中右键test_sofs_syslib然后选择refresh,之后应该在文件列表中能看到files.zip
  2. 在Nios II IDE中右键点击test_zofs,在菜单中选择最下面的System Library Properties,出现对话框如下图:
     
  3. 点击Software Components按钮(上图中红线所示),在出现的对话框点击左边的Altera Zip Read-Only File System菜单,右边会有相应的选择项出现,如下图所示:
     
  4. 设置zip readonly file system属性
    • 选择Add this software component
    • Flash Memory Device项选择工程中的Flash设备
    • Offset(偏移地址)可以自己选择,一般选0x100000
    • Mount-point(挂载点)保持默认即可,当然也可以随意改动
    • Zip file:点后面的Browse按钮,如果第一步执行正确的话,这里应该可以看到files.zip,选择即可
  5. 工程设置完毕后,可以编译一下,在运行前需要把files.zip烧写到Flash中,方法是:在Nios II IDE中点击Tools->Flash Programmer,出现如下对话框,选择下面的Program a file into flash memory,然后按上一步中的设置选择File、Memory和Offset,选择完毕后点Program Flash按钮,所选择的文件会自动烧写到Flash中,在Nios II IDE中也可以看到烧写过程中的信息,烧写完毕后进入下一步
     
  6. 现在就可以在软件中使用rozipfs文件系统了,可以用fopen("/mnt/rozipfs/1.txt", "r")语句打开files.zip中的1.txt文件,也可以通过fgetc、fread或fscanf进行读操作

在Nios II IDE中使用zip readonly file system介绍完毕,希望对同行有所帮助。 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条