iam目前使用NIOS II和Quartus II v12.0
由于Nios I I使用C语言,所以可以打开文件,但是命令fopen(“filename”,“readmode”)不可用,因为它不在Nios的stdio.h上,所以我怀疑,如何在Nios中打开文件?我需要用一个新图书馆吗?我需要把我的代码块stdio.h改成Nios-one吗?
谢谢你。
最佳答案
我刚刚看了一下Nios II Software Developers Handbook,发现它使用了NewlibC库,开发人员手册引用了fopen(),所以我只能假设您是不正确的。Newlib是开源的,所以你可以自己调查。
即便如此,Newlib库在任何情况下都不会实现文件系统——stdio不是文件系统;而是为任何流I/O设备提供标准接口。文件系统本身通常由操作系统或第三方库提供。
即使您有一个文件系统,在任何情况下都必须通过Newlibsyscalls stubs在它和stdio之间提供低级接口。
NiosII只定义处理器体系结构,任何文件系统硬件都是完全专有的,因此在任何情况下都不可能有现成的文件系统支持——它必须适应您的硬件。
您打算在哪种设备上创建文件系统?您可以使用第三方库,如EFSL或ELM FatFs。您可以单独使用它们,或者通过实现适当的系统调用将它们集成到stdio中。
关于c - 如何使用Nios II打开文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12271288/