亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? sdcmd.h

?? 基于lpc2378的SD/MMC卡讀寫(xiě)程序
?? H
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):








/*********************************************************************************
                    
                    SD/MMC 卡 SPI 總線模式命令及響應(yīng)

**********************************************************************************/

#if (!SDBUS_MODE_EN)

/* R1和R2高字節(jié)錯(cuò)誤碼 R1 and upper byte of R2 error code */
#define MSK_IDLE          		  0x01
#define MSK_ERASE_RST     		  0x02
#define MSK_ILL_CMD       		  0x04
#define MSK_CRC_ERR       		  0x08
#define MSK_ERASE_SEQ_ERR 		  0x10
#define MSK_ADDR_ERR      		  0x20
#define MSK_PARAM_ERR     		  0x40


/* R2低字節(jié)錯(cuò)誤碼 lower byte of R2 error code */
#define MSK_TOK_ERROR             0x01
#define MSK_TOK_CC_ERROR          0x02
#define MSK_TOK_ECC_FAILED        0x04
#define MSK_TOK_CC_OUTOFRANGE     0x08
#define MSK_TOK_CC_LOCKED         0x10


/* 數(shù)據(jù)令牌 Data Tokens */
#define SD_TOK_READ_STARTBLOCK    0xFE
#define SD_TOK_WRITE_STARTBLOCK   0xFE
#define SD_TOK_READ_STARTBLOCK_M  0xFE
#define SD_TOK_WRITE_STARTBLOCK_M 0xFC
#define SD_TOK_STOP_MULTI         0xFD

/* 數(shù)據(jù)響應(yīng)令牌 Data Response Tokens */
#define SD_RESP_DATA_MSK		  0x0F		//數(shù)據(jù)響應(yīng)掩碼
#define SD_RESP_DATA_ACCETPTED	  0x05		//數(shù)據(jù)被接受
#define SD_RESP_DATA_REJECT_CRC	  0x0B      //由于CRC錯(cuò)誤而被拒絕
#define SD_RESP_DATA_REJECT_WRITE 0x0D		//由于寫(xiě)錯(cuò)誤而被拒絕

/* 等待類(lèi)型 Wait Type */
#define SD_WAIT_READ			  0x00		//讀等待
#define SD_WAIT_WRITE			  0x01		//寫(xiě)等待
#define SD_WAIT_ERASE		 	  0x02		//擦除等待



/* 命令響應(yīng)定義 define command's response */
#define R1    1
#define R1B   2
#define R2    3
#define R3    4


/*
*********************************************

     SD/MMC卡SPI模式下命令集

*********************************************
*/

/******************************** 基本命令集 Basic command set **************************/
/* 復(fù)位SD 卡 Reset cards to idle state */
#define CMD0 0
#define CMD0_R R1

/* 讀OCR寄存器 Read the OCR (MMC mode, do not use for SD cards) */
#define CMD1 1
#define CMD1_R R1

/* 讀CSD寄存器 Card sends the CSD */
#define CMD9 9
#define CMD9_R R1

/* 讀CID寄存器 Card sends CID */
#define CMD10 10
#define CMD10_R R1

/* 停止讀多塊時(shí)的數(shù)據(jù)傳輸 Stop a multiple block (stream) read/write operation */
#define CMD12 12
#define CMD12_R R1B

/* 讀 Card_Status 寄存器 Get the addressed card's status register */
#define CMD13 13
#define CMD13_R R2

/***************************** 塊讀命令集 Block read commands **************************/

/* 設(shè)置塊的長(zhǎng)度 Set the block length */
#define CMD16 16
#define CMD16_R R1

/* 讀單塊 Read a single block */
#define CMD17 17
#define CMD17_R R1

/* 讀多塊,直至主機(jī)發(fā)送CMD12為止 Read multiple blocks until a CMD12 */
#define CMD18 18
#define CMD18_R R1

/***************************** 塊寫(xiě)命令集 Block write commands *************************/
/* 寫(xiě)單塊 Write a block of the size selected with CMD16 */
#define CMD24 24
#define CMD24_R R1

/* 寫(xiě)多塊 Multiple block write until a CMD12 */
#define CMD25 25
#define CMD25_R R1

/* 寫(xiě)CSD寄存器 Program the programmable bits of the CSD */
#define CMD27 27
#define CMD27_R R1

/***************************** 寫(xiě)保護(hù) Write protection *****************************/
/* Set the write protection bit of the addressed group */
#define CMD28 28
#define CMD28_R R1B

/* Clear the write protection bit of the addressed group */
#define CMD29 29
#define CMD29_R R1B

/* Ask the card for the status of the write protection bits */
#define CMD30 30
#define CMD30_R R1

/***************************** 擦除命令 Erase commands *******************************/
/* 設(shè)置擦除塊的起始地址(只用于SD卡) Set the address of the first write block to be erased(only for SD) */
#define CMD32 32
#define CMD32_R R1

/* 設(shè)置擦除塊的終止地址(只用于SD卡) Set the address of the last write block to be erased(only for SD) */
#define CMD33 33
#define CMD33_R R1

/* 設(shè)置擦除塊的起始地址(只用于MMC卡) Set the address of the first write block to be erased(only for MMC) */
#define CMD35 35
#define CMD35_R R1

/* 設(shè)置擦除塊的終止地址(只用于MMC卡) Set the address of the last write block to be erased(only for MMC) */
#define CMD36 36
#define CMD36_R R1

/* 擦除所選擇的塊 Erase the selected write blocks */
#define CMD38 38
#define CMD38_R R1B

/***************************** 鎖卡命令 Lock Card commands ***************************/
/* 設(shè)置/復(fù)位密碼或上鎖/解鎖卡 Set/reset the password or lock/unlock the card */
#define CMD42 42
#define CMD42_R	R1B
/* Commands from 42 to 54, not defined here */

/***************************** 應(yīng)用命令 Application-specific commands ****************/
/* 禁止下一個(gè)命令為應(yīng)用命令  Flag that the next command is application-specific */
#define CMD55 55
#define CMD55_R R1

/* 應(yīng)用命令的通用I/O  General purpose I/O for application-specific commands */
#define CMD56 56
#define CMD56_R R1

/* 讀OCR寄存器  Read the OCR (SPI mode only) */
#define CMD58 58
#define CMD58_R R3

/* 使能或禁止 CRC Turn CRC on or off */
#define CMD59 59
#define CMD59_R R1

/***************************** 應(yīng)用命令 Application-specific commands ***************/
/* 獲取 SD Status寄存器 Get the SD card's status */
#define ACMD13 13
#define ACMD13_R R2

/* 得到已寫(xiě)入卡中的塊的個(gè)數(shù) Get the number of written write blocks (Minus errors ) */
#define ACMD22 22
#define ACMD22_R R1

/* 在寫(xiě)之前,設(shè)置預(yù)先擦除的塊的個(gè)數(shù) Set the number of write blocks to be pre-erased before writing */
#define ACMD23 23
#define ACMD23_R R1

/* 讀取OCR寄存器 Get the card's OCR (SD mode) */
#define ACMD41 41
#define ACMD41_R R1

/* 連接/斷開(kāi)CD/DATA[3]引腳上的上拉電阻 Connect or disconnect the 50kOhm internal pull-up on CD/DAT[3] */
#define ACMD42 42
#define ACMD42_R R1

/* 讀取SCR寄存器 Get the SD configuration register */
#define ACMD51 51
#define ACMD51_R R1


extern INT8U SdSpi_SendCmd(sd_struct *sds, INT8U cmd, INT8U *param, INT8U resptype, INT8U *resp);
extern void SdSpi_PackParam(INT8U *parameter, INT32U value);							// 封裝參數(shù)

extern INT8U SdSpi_BlockCommand(sd_struct *sds, INT8U cmd, INT8U resptype, INT32U parameter);
 																					    // 塊命令
	
extern INT8U SpiCmd_Go_Idle_State(sd_struct *sds);										// 復(fù)位SD卡		
extern INT8U SpiCmd_Send_OP_Cond(sd_struct *sds);

extern INT8U SpiCmd_Send_CSD(sd_struct *sds, INT8U csdlen, INT8U *recbuf);			    // 讀CSD 			
extern INT8U SpiCmd_Send_CID(sd_struct *sds, INT8U cidlen, INT8U *recbuf);				// 讀CID			
extern INT8U SpiCmd_Stop_Transmission(sd_struct *sds);									// 停止傳輸			

extern INT8U SpiCmd_Send_Status(sd_struct *sds, INT8U len, INT8U *buffer);			    // 讀Card Status
extern INT8U SpiCmd_Set_BlockLen(sd_struct *sds, INT32U length);						// 設(shè)置塊長(zhǎng)度

extern INT8U SpiCmd_Read_Single_Block(sd_struct *sds, INT32U blockaddr);				// 讀單塊
extern INT8U SpiCmd_Read_Multiple_Block(sd_struct *sds, INT32U blockaddr);				// 讀多塊

extern INT8U SpiCmd_Write_Single_Block(sd_struct *sds, INT32U blockaddr);				// 寫(xiě)單塊
extern INT8U SpiCmd_Write_Multiple_Block(sd_struct *sds, INT32U blockaddr);				// 寫(xiě)多塊

extern INT8U SpiCmd_Program_CSD(sd_struct *sds, INT8U len, INT8U *buff);				// 寫(xiě)CSD寄存器 

extern INT8U SdCmd_Erase_Wr_Blk_Start(sd_struct *sds, INT32U startblock);			    // 擦塊起始地址		
extern INT8U SdCmd_Erase_Wr_Blk_End(sd_struct *sds, INT32U endblock);				    // 擦塊終止地址
extern INT8U SdCmd_Erase(sd_struct *sds);											    // 擦除所選的塊
    
extern INT8U SpiCmd_ReadOCR(sd_struct *sds, INT32U *ocrbuf);                            // 讀OCR         
extern INT8U SpiCmd_CRC_ON_OFF(sd_struct *sds, INT8U bEnable);						    // 使能CRC校驗(yàn)

// 特殊應(yīng)用命令
extern	INT8U SpiCmd_ReadSD_Status(sd_struct *sds, INT8U sdslen, INT8U *recbuf);	    // 讀SD_Status	
extern INT8U SpiCmd_Send_SCR(sd_struct *sds, INT8U scrlen, INT8U *recbuf);			    // 讀SCR
extern INT8U SpiCmd_Send_Num_WR_Blcoks(sd_struct *sds, INT32U *blocknum);			    // 得到正確寫(xiě)入塊數(shù) 


// 數(shù)據(jù)流函數(shù)
extern INT8U SdSpi_ReadRegister(sd_struct *sds, INT32U len, INT8U *recbuf);						// 讀寄存器
extern INT8U SdSpi_ReadBlockData(sd_struct *sds, INT32U len, INT8U *recbuf);					// 讀塊數(shù)據(jù)
extern INT8U SdSpi_WriteBlockData(sd_struct *sds, INT8U bmulti, INT32U len, INT8U *sendbuf);	// 寫(xiě)塊數(shù)據(jù)
	
// 其它函數(shù)
extern void SdSpi_StopMultiToken(sd_struct *sds);					// 停止多塊寫(xiě)令牌	 
extern INT8U SdSpi_WaitBusy(sd_struct *sds, INT8U waittype);		// 忙
extern void SdSpi_Delay(sd_struct *sds, INT8U value);		        // 發(fā)生SPI時(shí)鐘

#endif  // end of !SDBUS_MODE_EN



#endif // end of __SDCMD_H__
























?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲chinese男男1069| 在线观看精品一区| 国产精品亚洲成人| 黑人精品欧美一区二区蜜桃| 麻豆视频观看网址久久| 日本免费新一区视频| 欧美aaaaaa午夜精品| 美女脱光内衣内裤视频久久网站 | 国产校园另类小说区| 国产日韩欧美电影| 国产精品三级视频| 国产精品网站在线| 国产精品久久久久久久久搜平片| 国产精品电影一区二区| 亚洲天堂精品在线观看| 亚洲精品视频在线看| 亚洲香肠在线观看| 天天色天天爱天天射综合| 麻豆成人免费电影| 国产激情一区二区三区| eeuss鲁片一区二区三区在线看| 99国产精品国产精品毛片| 色欧美片视频在线观看在线视频| 精品视频1区2区| 日韩欧美成人激情| 欧美激情一二三区| 一区二区三区高清| 免费观看在线色综合| 国产黄色精品视频| 色先锋资源久久综合| 欧美电影影音先锋| 国产亚洲精品福利| 亚洲国产中文字幕| 国产真实乱对白精彩久久| 高清视频一区二区| 欧美日韩一本到| 精品久久久久久久久久久久包黑料 | 亚洲一区二区三区四区在线观看 | 国产成人精品三级| 91成人免费在线视频| 精品国免费一区二区三区| 一区在线观看免费| 日韩黄色片在线观看| 成人在线视频一区二区| 欧美偷拍一区二区| 久久久久久一级片| 亚洲综合无码一区二区| 韩国女主播一区二区三区| 91在线播放网址| 日韩女优视频免费观看| 亚洲桃色在线一区| 精品一区二区三区影院在线午夜 | 精品久久一二三区| 亚洲精品中文在线| 韩国毛片一区二区三区| 91国偷自产一区二区三区成为亚洲经典| 日韩三级免费观看| 亚洲免费av高清| 久草中文综合在线| 欧美无乱码久久久免费午夜一区| 国产亚洲欧美日韩俺去了| 日韩在线观看一区二区| 99免费精品视频| 日韩精品一区二区在线| 亚洲一区二区三区四区在线免费观看 | 久久精品国产77777蜜臀| 91蜜桃在线免费视频| 精品国产91洋老外米糕| 亚洲成人中文在线| 91视频www| 国产视频一区二区在线| 久久99久久久欧美国产| 欧美高清www午色夜在线视频| 亚洲欧洲国产日本综合| 国产精品538一区二区在线| 日韩欧美中文字幕公布| 亚洲电影一区二区| 99精品久久久久久| 国产精品天干天干在线综合| 国产一区二区三区电影在线观看| 91精品在线免费| 亚洲国产va精品久久久不卡综合| 99re成人精品视频| 国产精品丝袜在线| 国v精品久久久网| 久久精品一区蜜桃臀影院| 久久超碰97人人做人人爱| 91精品国产综合久久久蜜臀粉嫩| 亚洲综合区在线| 一本色道亚洲精品aⅴ| 日韩码欧中文字| 97久久精品人人做人人爽50路| 亚洲国产成人私人影院tom| 精品无人码麻豆乱码1区2区| 日韩网站在线看片你懂的| 日日夜夜免费精品视频| 欧美日韩成人在线| 亚洲成人免费av| 69成人精品免费视频| 丝袜美腿亚洲综合| 91麻豆精品国产91| 视频一区免费在线观看| 91精品国产91久久综合桃花| 天堂资源在线中文精品| 欧美精品日韩精品| 日韩国产欧美在线播放| 日韩一区二区在线免费观看| 看电视剧不卡顿的网站| 欧美tickle裸体挠脚心vk| 激情欧美一区二区| 欧美国产精品久久| www.欧美.com| 亚洲综合丁香婷婷六月香| 欧美日韩免费一区二区三区视频| 亚洲国产日日夜夜| 日韩一区二区视频| 精品一区二区三区免费观看 | 免费亚洲电影在线| 日韩一区二区三区视频| 国产精品自拍一区| 国产精品高潮久久久久无| 91福利视频久久久久| 日本在线不卡一区| 久久久综合视频| 91香蕉国产在线观看软件| 一区二区三区精品视频在线| 51精品国自产在线| 精品无人码麻豆乱码1区2区| 中文字幕一区二区三区在线不卡| 欧美最猛黑人xxxxx猛交| 日本不卡一区二区| 欧美国产欧美综合| 欧洲一区在线电影| 韩国一区二区在线观看| 亚洲天堂成人在线观看| 在线播放中文一区| 国产69精品一区二区亚洲孕妇 | 成人动漫一区二区三区| 亚洲一本大道在线| 亚洲精品一线二线三线无人区| 成人国产精品免费网站| 亚洲成a人v欧美综合天堂| 精品福利二区三区| 91免费看`日韩一区二区| 免费日韩伦理电影| 中文字幕制服丝袜一区二区三区 | 亚洲欧洲精品天堂一级| 欧美一区二区三区婷婷月色 | 国产精品情趣视频| 在线不卡中文字幕| 床上的激情91.| 石原莉奈在线亚洲三区| 国产欧美视频在线观看| 色av成人天堂桃色av| 久久精品国产久精国产爱| 亚洲欧美二区三区| 欧美mv日韩mv| 欧美中文字幕不卡| 成人在线视频首页| 捆绑变态av一区二区三区| 亚洲精品国产成人久久av盗摄| 精品久久久久久久人人人人传媒| 欧美在线短视频| 国产成人av一区二区| 日韩av成人高清| 一区二区三区日本| 中文字幕va一区二区三区| 6080国产精品一区二区| 色国产综合视频| 成人免费观看视频| 久久99九九99精品| 午夜电影久久久| 亚洲少妇中出一区| 国产亚洲1区2区3区| 欧美xfplay| 欧美美女一区二区| 色成年激情久久综合| 成人看片黄a免费看在线| 久久精品国产亚洲高清剧情介绍 | 亚洲成人av一区| 中文字幕视频一区二区三区久| 久久综合给合久久狠狠狠97色69| 欧美影视一区二区三区| 91麻豆精品一区二区三区| 国产99久久久久| 精品一区二区三区在线视频| 免费在线观看成人| 石原莉奈一区二区三区在线观看| 亚洲一区二区视频| 一区二区三区四区乱视频| 国产精品免费视频一区| 欧美国产日韩亚洲一区| 久久精品视频免费观看| 26uuu久久综合| 欧美一级在线观看| 欧美一区二区三区四区在线观看| 9191成人精品久久| 91超碰这里只有精品国产| 制服丝袜中文字幕亚洲| 欧美精品一级二级三级|