前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >STM32F407 MCU搭配 SDNAND 不断电初始化失效解决方案

STM32F407 MCU搭配 SDNAND 不断电初始化失效解决方案

原创
作者头像
用户11143476
发布2024-12-11 11:09:39
发布2024-12-11 11:09:39
1160
举报
文章被收录于专栏:SD NAND

STM32F407微控制器单元(MCU)与SD NAND的结合提供了强大的存储解决方案。然而,不断电初始化失效问题可能会导致系统稳定性和数据完整性受损。我们将STM32F407与SD NAND集成时可能遇到的初始化问题,并提供专业的解决方案。

STM32F407MCU搭配SD NAND型号MKDV4GCL-ABB方案:

TM32F407 MCU搭配米客方德SD NAND
TM32F407 MCU搭配米客方德SD NAND

初始化失效如下图

TM32F407 MCU搭配米客方德SD NAND
TM32F407 MCU搭配米客方德SD NAND

黄色:miso

绿色:mosi

蓝色:clk

紫色:片选

从图中看问题

  1. MISO(主输入从输出):MISO信号是SD卡的响应信号没出来。在初始化过程中,SD卡在MISO线上发送特定的响应码。检查不到响应码。
  2. 片选信号(CS),片选信号应该在初始化过程中正确地拉低。检查CS信号没有在正确的时间点被拉低,以激活SD卡。

解问题方法:

1,在SD卡上电后,先向SD卡发送至少74个时钟周期,以完成SD卡的自身检查和初始化,进入IDLE状态。CS和MOSI引脚必须保持高电平

2,在发送CMD0命令(0x40)复位SD卡时,需要拉低CS信号

3,发送完CMD0命令后,等待SD卡返回响应数据,然后等待8个时钟周期再拉高CS信号

4,在后续的CMD8、CMD55和ACMD41命令中,每次发送命令前都需要拉低CS信号,命令发送完成后等待响应数据,然后等待8个时钟周期再拉高CS信号.

5,CS信号应该在以下时间点拉低:

发送CMD0命令前。

发送CMD8命令前。

发送CMD55命令前。

发送ACMD41命令前。

发送CMD24写操作命令前。

发送CMD17读操作命令前

SD卡不能一直读写状态的条件下操作:

错开SD卡读写时间,MCU再做复位,软件时序修改SD卡停止读写完后,MCU再做复位操作。

常图如下:

TM32F407 MCU搭配米客方德SD NAND
TM32F407 MCU搭配米客方德SD NAND

STM32F407 MCU与SD NAND的结合适用于工业控制、智能监控、医疗设备和智能家居等应用场景,为这些领域提供了高效、可靠的数据存储和处理能力。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档