一、SD MODE 模式介绍
CS创世 SD NAND支持SD模式和SPI模式,但默认情况下,SD NAND处于SD模式。在SD模式下,设备的初始化过程如下:
- 配置时钟:将时钟频率设置在0-400KHZ之间,并设定工作模式。
- 发送CMD0:使SD卡进入空闲状态(idle),此时不会有反馈。
- 发送CMD8:验证卡是否兼容SD2.0协议,同时获取SD卡的工作电压。
- 发送CMD55+ACMD41:判断SD卡的上电是否正确。短响应成功说明卡为SD卡,且第31位为1时表示为HC卡。如果无响应,则发送CMD0以确认是否为MMC卡。
- 发送CMD2:验证SD卡是否正确接入,检查长响应(CID)。
- 发送CMD3:读取SD卡的RCA(相对地址),获取短响应。
- 发送CMD9:获取CSD寄存器信息,以获取卡的详细信息。
- 发送CMD7:使能SD卡。
- 配置高速时钟:准备数据传输,一般时钟频率为20M-25M。
在SD模式下,SD NAND默认使用单线输出(data0),但在高速模式下可使用四线(data0~data3)进行传输。
二、SPI MODE 模式介绍
如果需要使用SPI接口,CS创世 SD NAND在首次上电时需要通过发送复位命令切换至SPI模式。在SPI模式下,初始化过程如下:
- 设置SPI时钟:将时钟设置为低速模式,频率为0~400KHZ,因为SD卡初始化只能在低速模式下进行。
- 发送时钟信号:发送至少74个周期的时钟信号,建议发送更多周期以确保电路延时不影响初始化。
- 发送CMD0:当SD卡收到复位命令且CS引脚为低电平时,SD卡将切换至SPI模式,并进入空闲状态(IDLE)。
- 发送CMD8:针对SD2.0进行鉴别,同时读取返回的4个字节以判断是否支持工作电压(如2.7~3.6V支持则返回0x01AA)。
- 发送CMD55+ACMD41:检测SD卡的初始化是否完成。
- 发送CMD58:进一步确认SD卡型号,如SDHC卡采用扇区块寻址,普通SD卡则为字节寻址。
- 发送CMD55+ACMD41:再次检测返回值以判断是否为SD1.0或MMC卡。
- 发送CMD16:设置SD卡的扇区大小,默认为512字节。
- 设置SPI时钟为高速模式:最大频率可达25MHz,完成初始化。
在SPI模式下,通信只能通过CS(片选)、CLK(时钟)、DI(输入)、DO(输出)等引脚进行,相比于SD模式的四线传输,SPI模式只能使用单线传输,速度较慢。
三、SD模式与SPI模式的区别
- 默认模式:SD NAND默认使用SD MODE,而要进入SPI MODE,必须在第一次上电时发送复位命令。
- 传输方式:SD模式下默认使用单线输出,但在高速模式下可使用四线传输;而SPI模式只能使用单线传输。
- 设计压力:对于只有SPI接口的设备,使用SPI模式能减少设计复杂性,但相应的传输速度也会有所降低。
四、总结
通过以上介绍,相信大家对CS创世 SD NAND在SD MODE和SPI MODE下的使用有了更深入的了解。目前,CS创世 SD NAND在市场上被广泛应用于穿戴设备、航空航天、铁路交通、水利检测等工业领域。如果您对我们的产品感兴趣,欢迎随时联系我们,我们将竭诚为您服务。