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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sdhal.c

?? SD卡SPI讀寫
?? C
字號:
/*****************************************************************************************************
** Descriptions:sd 卡驅動軟件包: 硬件抽象層 ---- SPI操作函數
********************************************************************************************************/
#include    "define.h"

	/**************************************************************
		
		讀寫SD卡的SPI接口函數: SPI接口設置,發送/接收字節函數	
	
	**************************************************************/
/*
*********************************************************************************************************
** 函數名稱:SSP_Init()
** 函數功能:將SSP控制器設置為主機SPI。
** 入口參數:無
** 出口參數:無
*********************************************************************************************************
*/
void  SPI_INIT(void)
{
	SSPCR1 = 0x00; 

	PINSEL1 |= (0x02 << 2) |	       //連接SSP模塊
			   (0x02 << 4) |
			   (0x02 << 6);
	SPI_CS_OUT(); 					   //片選腳設置為輸出
	SPI_CS_SET(); 					   //設置片選腳為高電平

	SSPCR0 = 0x0707;				   //8位數據長度,CPOL = 0, CPHA = 0,SCR=15,SPI模式

	SSPCPSR = 0x2;					   //時鐘分頻器

	SSPCR1 = 0x02;					   //SSP使能

}

/*******************************************************************************************************************
** 函數名稱: void SD_HardWareInit()				Name:	  void SD_HardWareInit()
** 功能描述: 初始化訪問SD卡的硬件條件			Function: initialize the hardware condiction that access sd card
** 輸   入: 無									Input:	  NULL
** 輸   出: 無									Output:	  NULL
********************************************************************************************************************/
void SD_HardWareInit(void)
{ 
	SPI_INIT();									/* 初始化SPI接口 */	

   	SPI_CS_SET();								/* CS置高 */
 	
}												


/*******************************************************************************************************************
** 函數名稱: void SPI_Clk400k()					Name:	  void SPI_Clk400k()
** 功能描述: 設置SPI的時鐘小于400kHZ			Function: set the clock of SPI less than 400kHZ
** 輸   入: 無									Input:	  NULL
** 輸   出: 無									Output:	  NULL
********************************************************************************************************************/
void SPI_Clk400k(void)
{
	SSPCPSR = 128;    						/* 設置SPI時鐘分頻值為128  Set the value of dividing frequency to 128 */
}


/*******************************************************************************************************************
** 函數名稱: void SPI_ClkToMax()				Name:	  void SPI_ClkToMax()
** 功能描述: 設置SPI的clock到最大值				Function: set the clock of SPI to maximum
** 輸   入: 無									Input:	  NULL
** 輸   出: 無									Output:	  NULL
********************************************************************************************************************/
void SPI_ClkToMax(void)
{
	SSPCPSR = 8;								/* 設置SPI時鐘分頻值為8  Set the value of dividing frequency to 8 */
}


/*******************************************************************************************************************
** 函數名稱: void SPI_SendByte()				Name:	  void SPI_SendByte()
** 功能描述: 通過SPI接口發送一個字節			Function: send a byte by SPI interface
** 輸   入: INT8U byte: 發送的字節				Input:	  INT8U byte: the byte that will be send
** 輸   出: 無									Output:	  NULL
********************************************************************************************************************/
void SPI_SendByte(uint8 byte)
{
	uint8 temp;
	SSPDR = byte;
	while ( (SSPSR & 0x01) == 0 );
	temp = SSPDR;								 /* 刷新 RxFIFO */

}


/*******************************************************************************************************************
** 函數名稱: INT8U SPI_RecByte()				Name:	  INT8U SPI_RecByte()
** 功能描述: 從SPI接口接收一個字節				Function: receive a byte from SPI interface
** 輸   入: 無									Input:	  NULL
** 輸   出: 收到的字節							Output:	  the byte that be received
********************************************************************************************************************/
uint8 SPI_RecByte(void)
{
	SSPDR = 0xFF;
   
 	while(SSPSR & 0x10);						/* 等待SPIF置位,即等待收到數據 */
												/* wait for SPIF being set, that is, wait for being received data */
	return(SSPDR); 								/* 讀取收到的字節 read the byte received */
}


/*******************************************************************************************************************
** 函數名稱: void SPI_CS_Assert()				Name:	  void SPI_CS_Assert()
** 功能描述: 片選SPI從機						Function: select the SPI slave 
** 輸   入: 無									Input:	  NULL
** 輸   出: 無									Output:	  NULL
********************************************************************************************************************/
void SPI_CS_Assert(void)
{
	SPI_CS_CLR();			   					/* 片選SPI從機  select the SPI slave */  
}


/*******************************************************************************************************************
** 函數名稱: void SPI_CS_Deassert()				Name:	  void SPI_CS_Deassert()
** 功能描述: 不片選SPI從機						Function: not select the SPI slave 
** 輸   入: 無									Input:	  NULL
** 輸   出: 無									Output:	  NULL
********************************************************************************************************************/
void SPI_CS_Deassert(void)
{
	SPI_CS_SET();			    				/* 不片選SPI從機  not select the SPI slave */
}












?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久看| caoporn国产精品| 国产精品456| 欧美电影免费观看完整版| 亚洲伊人伊色伊影伊综合网| 欧美性欧美巨大黑白大战| 亚洲黄色av一区| 在线观看91精品国产麻豆| 久久 天天综合| 1024亚洲合集| 欧美电影在线免费观看| 欧美猛男男办公室激情| 成人免费av网站| 亚洲电影一区二区| 国产一区二区导航在线播放| 亚洲视频在线一区观看| 91精品国产欧美一区二区| 国产麻豆精品视频| 国产伦理精品不卡| 91色九色蝌蚪| 国模少妇一区二区三区| 一区二区三区高清| 欧美国产日韩精品免费观看| 欧美人xxxx| 久久综合给合久久狠狠狠97色69| 成人av第一页| 精品在线一区二区三区| 粉嫩一区二区三区在线看| 久久精品噜噜噜成人av农村| 亚洲老司机在线| 欧美aaa在线| 国产精品毛片久久久久久| 日韩欧美国产电影| 久久久久国产成人精品亚洲午夜| 欧美欧美欧美欧美首页| xnxx国产精品| 亚洲另类在线制服丝袜| 极品少妇一区二区| 色婷婷亚洲一区二区三区| 国产精品自拍三区| 在线观看亚洲成人| 欧美最猛性xxxxx直播| 欧美成人伊人久久综合网| 欧美一区二区三区视频在线| 亚洲欧美自拍偷拍| 日本不卡在线视频| 久久精品久久久精品美女| av高清久久久| 欧美精品一区二区不卡 | 欧美一区二区三区性视频| 久久久久久久免费视频了| 一区二区国产视频| 成人性生交大片免费看中文网站| 欧美精品99久久久**| 亚洲视频一区在线| 国产一区二区久久| 欧美一级片在线| 亚洲综合一二三区| 成人av电影观看| 久久亚洲精华国产精华液| 婷婷国产v国产偷v亚洲高清| 亚洲国产成人精品视频| 成人免费精品视频| 欧美精品一区二区三区蜜臀| 日韩激情一区二区| 国产在线不卡一卡二卡三卡四卡| 欧美日韩久久一区| 亚洲成人av资源| 91极品美女在线| 日韩亚洲欧美一区| 久久综合九色综合97婷婷女人| 亚洲高清在线视频| 欧美私人免费视频| 亚洲福利视频导航| 欧美色老头old∨ideo| 日韩区在线观看| 奇米精品一区二区三区在线观看一| 91豆麻精品91久久久久久| 国产精品成人免费精品自在线观看| 岛国一区二区在线观看| 中文字幕免费不卡| 91老师片黄在线观看| 亚洲欧美国产77777| 免费成人av在线| 日韩免费观看2025年上映的电影| 蜜臀av亚洲一区中文字幕| 成人黄色电影在线| 国产精品久久久久久久久免费相片| 国产成人欧美日韩在线电影| 欧美性生活影院| 日韩成人免费在线| 精品盗摄一区二区三区| 国产综合色视频| 国产精品久久综合| 91福利在线免费观看| 亚洲成av人在线观看| 欧美一区二区成人6969| 狠狠久久亚洲欧美| 国产精品伦一区| 欧美丝袜自拍制服另类| 免费精品视频在线| 国产亲近乱来精品视频| 蜜臂av日日欢夜夜爽一区| 欧美xxxxx牲另类人与| 国产福利精品一区二区| 亚洲乱码精品一二三四区日韩在线| 欧美日韩一区在线观看| 国产一区二区三区四区五区美女| 国产精品三级久久久久三级| 欧美艳星brazzers| 国产精品一区一区三区| 亚洲精品乱码久久久久久日本蜜臀| 在线不卡欧美精品一区二区三区| 国产精品123区| 日韩制服丝袜先锋影音| 国产欧美日本一区视频| 正在播放一区二区| 日韩专区中文字幕一区二区| 久久综合色鬼综合色| 色噜噜狠狠色综合欧洲selulu| 久久福利视频一区二区| 亚洲免费电影在线| 精品久久久久一区二区国产| 欧洲精品一区二区| 成人精品一区二区三区四区 | 日韩免费视频线观看| 91网站视频在线观看| 久久国产综合精品| 亚洲二区视频在线| 中文字幕一区二区视频| 精品国产乱码久久久久久蜜臀| 色网综合在线观看| 国产91精品一区二区麻豆网站 | 国产欧美日韩亚州综合 | 国产一区二区三区视频在线播放| 一区二区三区四区乱视频| 欧美国产日韩精品免费观看| 日韩欧美一区在线观看| 欧美日韩一区二区三区四区五区| 成人午夜激情在线| 国产成人超碰人人澡人人澡| 蜜桃在线一区二区三区| 亚洲第一会所有码转帖| 亚洲人精品午夜| 国产精品久久久一本精品| 亚洲国产精品二十页| 精品国产一二三区| 欧美sm极限捆绑bd| 精品区一区二区| 精品99一区二区三区| 精品国产亚洲一区二区三区在线观看| 欧美少妇性性性| 欧美精品高清视频| 欧美一区二区在线观看| 91精品免费观看| 日韩一区二区免费电影| 日韩欧美国产小视频| 日韩欧美高清一区| 久久影院午夜片一区| 精品国产露脸精彩对白| 精品国产sm最大网站免费看| 欧美xxxx老人做受| 欧美国产日本韩| 亚洲欧美一区二区不卡| 亚洲五码中文字幕| 天堂蜜桃91精品| 美日韩黄色大片| 国产不卡视频一区二区三区| 成人综合激情网| 91久久精品网| 欧美精品国产精品| 久久影院视频免费| 亚洲国产经典视频| 夜夜操天天操亚洲| 日本午夜一区二区| 丁香婷婷综合五月| 色国产精品一区在线观看| 欧美日韩久久一区| 欧美精品一区二区精品网| 国产日韩欧美一区二区三区乱码 | 精品卡一卡二卡三卡四在线| 国产日产欧美一区| 一区二区三区av电影 | 中文字幕 久热精品 视频在线| 国产精品福利电影一区二区三区四区| 亚洲欧美日韩电影| 蜜桃视频免费观看一区| 成人高清伦理免费影院在线观看| 在线亚洲欧美专区二区| 欧美α欧美αv大片| 一区二区在线电影| 久久99深爱久久99精品| 91一区二区三区在线播放| 3751色影院一区二区三区| 国产日产欧产精品推荐色| 亚洲成人自拍偷拍| 国产91精品免费| 91精品国产综合久久精品app| 国产精品久久久久9999吃药| 免费成人av在线播放|