iam当前在Quartus II v12.0中使用NIOS II
由于Nios II使用C语言,它将被允许打开文件,但命令fopen("filename","readmode");不可用,因为它不在Nios的stdio.h上,所以我的疑问是,如何在Nios中打开文件?我需要使用一个新的库吗?我必须将我的代码块stdio.h改为我的Nios代码块吗?
现在谢谢了。
发布于 2013-05-09 11:30:04
我已经使用了DE2-115DVD中的演示项目,并获得了FAT库,现在我可以打开文件了。
发布于 2012-09-05 05:43:53
我刚刚看了一下Nios II Software Developers Handbook,发现它使用了Newlib C库,而开发人员手册中提到了fopen(),所以我只能假定您是错误的。Newlib是开源的,因此您可以自己调查。
即使这样,Newlib库在任何情况下都不实现文件系统- stdio不是文件系统;相反,它为任何流I/O设备提供了一个标准接口。文件系统本身通常由操作系统或第三方库提供。
即使你有一个文件系统,你仍然必须在任何情况下提供它和stdio之间的底层接口,在这种情况下是通过Newlib syscalls stubs。
NiosII仅定义处理器体系结构,任何文件系统硬件都将是完全专有的,因此在任何情况下都不可能有开箱即用的文件系统支持-它必须适应您的硬件。
您打算在哪种设备上创建文件系统?您可以使用第三方库,如EFSL或ELM FatFs。您可以独立使用它们,也可以通过实现适当的syscall将它们集成到stdio中。
https://stackoverflow.com/questions/12271288
复制相似问题