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

📄 mcard.h

📁 常见卡(SD,NAND,XD,MS,ATA,CF)完整DRIVER
💻 H
字号:
/*
*******************************************************************************
*                               Magic Pixel
*                  5F, No.3, Creation Road III, Science_Based 
*                   Industrial Park, Hsinchu, Taiwan, R.O.C
*               (c) Copyright 2004, Magic Pixel Inc, Hsinchu, Taiwan
*
* All rights reserved. Magic Pixel's source code is an unpublished work and the 
* use of a copyright notice does not imply otherwise. This source code contains
* confidential, trad secret material. Any attempt or participation in 
* deciphering, decoding, reverse engineering or in ay way altering the source 
* code is strictly prohibited, unless the prior written consent of Magic 
* Pixel is obtained.
*
* Filename      : mcard.h
* Programmer(s) : 
* Created       : 
* Descriptions  :
*******************************************************************************
*/
#ifndef __MCARD_H
#define __MCARD_H

/*
// Include section 
*/
#include "utiltypedef.h"

/*
// Constant declarations
*/

///
///@defgroup CONSTANT Constants
///

///
///@defgroup COMMON Common
///@ingroup CONSTANT
///@{
//#define MAX_MCARD_MSGNUM			1

// define mcard command
#define NULL_CARD_CMD               0
#define INIT_CARD_CMD               1
#define READ_PAGE_CMD               2
#define WRITE_PAGE_CMD				3
#define FORMAT_CMD                  4
#define REMOVE_CARD_CMD             5 //Athena 03.11.2006 seperate card in & out
#define FOR_USBH_PTP_SCAN_OBJECT_NOT_MCARD_CMD               0xFF

// Define MCARD command return value
/// memory command pass
#define MCARD_CMD_PASS          0
/// memory command fail
#define MCARD_CMD_FAIL         	-1
/// memory command invalid
#define MCARD_CMD_INVALID    	-2
///@}


/*
// Structure declarations
*/




/*
// Function prototype 
*/
extern void Mcard_Isr (void);
extern void Mcard_Init (void);
extern BYTE *Mcard_GetDescriptor (BYTE bMcardID);
extern SWORD Mcard_GetStatus (BYTE bMcardID);
extern SWORD Mcard_DeviceInit (BYTE bMcardID);
extern BYTE Mcard_GetDeviceNum (void);
extern DWORD Mcard_GetCapacity (BYTE bMcardID);
extern WORD Mcard_GetRenewCounter (BYTE bMcardID);
extern BYTE Mcard_GetFlagPresent (BYTE bMcardID);
extern BYTE Mcard_GetFlagReadOnly (BYTE bMcardID);
extern BYTE Mcard_GetMaxLun (void);
extern BYTE Mcard_CurLunGetCardID (BYTE bLunNum);
extern SWORD Mcard_Read (BYTE bDevID, DWORD dwBufferAddress, DWORD dwSectorCount, DWORD dwLogAddr);
extern SWORD Mcard_Write (BYTE bDevID, DWORD dwBufferAddress, DWORD dwSectorCount, DWORD dwLogAddr);

extern void McardSetCurLun (BYTE bLunNum, BYTE bMcardID);

extern void DeviceEnableByMcardId (BYTE bLun);
extern DWORD Mcard_GetSdSpeed (void);
extern void McardInitforClk(BYTE bMcardID);

#endif  //__MCARD_H

⌨️ 快捷键说明

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