⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fsax2nu.c

📁 基于东南大学开发的SEP3203的ARM7中的所有驱动
💻 C
字号:
/*
 *	Copyright (C) 2004 Asic Center
 * 	All right reserved 
 *	
 *	file name:		fsAx2Nu.c
 *	file description:	The interface between AsixOS fs and Nucleus FAT fs
 *	file abstrction:		Here defines five functions often used in filesystem operation, which 
 *					realize the wrap from Asix OS fs to Nucleus FAT fs. The key lies in 
 *					parameters transaction.
 *
 *	version:	0.1
 *	author:	Michael
 *	date:	2004-08-23
 *	
 */

#include "FAL.h"

INT NU2Ax_Open(char *fname, char *mode)
{
	UINT16 openflag, openmode;
	FAL_FILE fp;

	if( strcmp( mode, "rb+" ) == 0 )
		openflag = PO_RDWR;
	else 
		if( strcmp( mode, "wb+" ) == 0 )
			openflag = PO_RDWR | PO_CREAT;
		else
			return -1;

	openmode = FAL_IWRITE | FAL_IREAD;
			
	fp = FAL_Open(fname, openflag, openmode);

	return fp;
}



INT NU2Ax_Close(FAL_FILE fd)
{
	INT iotype = 0;
	
	return(FAL_Fclose(fd, iotype));
}

INT NU2Ax_Write(void *buf, int size, int count, FAL_FILE fp)
{
	unsigned int	length;

	length = size * count;

	return(FAL_Fwrite(buf, length, fp));
}

INT NU2Ax_Read(void *buf, int size, int count, FAL_FILE fp)
{
	unsigned int	length;

	length = size * count;

	return(FAL_Fread(buf, length, fp));
	
}

INT NU2Ax_Seek(FAL_FILE fp, long offset, int base)
{
	int origin;

	switch( base )
	{
		case SEEK_SET:
			origin = PSEEK_SET;
			break;
		case SEEK_CUR:
			origin = PSEEK_CUR;
			break;
		case SEEK_END:
			origin = PSEEK_END;
			break;
	}

	return(FAL_Seek(fp, offset, origin));
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -