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

📄 sds.c

📁 合众达的DM642示例工程
💻 C
字号:
#include <csl_gpio.h>
#include <csl_gpiohal.h>
#include "sdconfig.h"
#include "sdhal.h"   
#include "sdcrc.h"   
#include "sdcmd.h"   
#include "sddriver.h"
extern GPIO_Handle hGpio;

/*void SD_Power(void)
{
	INT32U i;

	SD_POWER_GPIO();
	SD_POWER_OUT();
	SD_POWER_OFF();								/* 关闭 SD 卡电源  turn off power of sd card */
	
	/*SPI_SCK_GPIO();	
	SPI_SCK_OUT();
	SPI_SCK_CLR();								/* SCK  引脚置低   set SCK to zero */
	
	/*SPI_MISO_GPIO();
	SPI_MISO_OUT();
	SPI_MISO_CLR();								/* MISO 引脚置低   set MISO to zero */
	/*
	SPI_MOSI_GPIO();		
	SPI_MOSI_OUT();
	SPI_MOSI_CLR();								/* MOSI 引脚置低   set MOSI to zero */
	
	/*SPI_CS_GPIO();								
   	SPI_CS_OUT();								
	SPI_CS_CLR();								/* CS 引脚置低	   set CS to zero */
		
	/*for(i = 0; i < 0x9000; i++);				/* 关闭电源延时    delay after turn off power of sd card */
	/*SD_POWER_ON();								/* 打开 SD 卡电源  turn on power of sd card */
//}

/*******************************************************************************************************************
** 函数名称: 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)
{ 
	//SD_Power();
	GPIO_pinWrite(hGpio,GPIO_PIN3,0x1);									/* 对卡先下电,再上电  turn off power of card, and turn on it */
	
	SPI_INIT(0xfa);									/* 初始化SPI接口      initialize SPI interface */	
	
	//SD_INSERT_GPIO();
	//SD_INSERT_IN();//已在主函数中说明			/* 检测卡完全插入口为输入口   the port checking card is input */
	
	//SD_WP_GPIO();								
	//SD_WP_IN();									/* 写保护检测口为输入口  	  the port written protect is input */	
		   
   	//SPI_CS_SET();								/* CS置高	  				  set CS to high voltage */

 	//SPI_Clk400k();								/* 设置SPI频率小于等于400kHZ  set frequency of SPI below 400kHZ */
   
 	//SP_SPCR = (0x01 << 4) + (0x01 <<I 5);		/* 设置SPI接口模式,MSTR = 1,CPOL = 1,CPHA = 0,LSBF=0 */
}												/* configure SPI interface */

/*******************************************************************************************************************
** 函数名称: 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)
//{
//	SPI_SPCCR = 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)
{
	SPI_SPCCR = 8;								/* 设置SPI时钟分频值为8  Set the value of dividing frequency to 8 */
//}

⌨️ 快捷键说明

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