MCU:STM32F429ZIT6
开发环境:STM32CubeMX+MDK5 外购了一个SPI接口的SD Card模块,想要实现SD卡存储数据的功能。首先需要打开STM32CubeMX工具。输入开发板MCU对应型号,找到开发板对应封装的MCU型号,双击打开(图中第三)。 此时,双击完后会关闭此界面,然后打开一个新界面。 然后,我们开始基本配置。 现在我们选
转载
2024-04-29 22:39:44
827阅读
一、操作环境IDE:keil 5.25版本(或者更高版本)板子:STM32F767核心板(SDIO接口用于读写SD,片外32M的SDRAM,USB slave)二、BootLoader的的实现和作用在Linux操作系统中一般BootLoader用于引导内核启动,先多板上要用到的外设进行初始化,接着创建一个很小的文件系统,用于引导内核以及根文件系统。在STM32F4系列以及跟高的性能cpu中存在FM
SD卡
1. SD卡介绍
1.1 SD卡简介很多单片机系统都需要大容量存储设备,以存储数据(常用的有U盘、FLASH芯片、SD卡等),比较而言SD卡是单片机大容量外部存储的首选,只需要少数几个IO口即可外扩一个容量从几十M到几十G的,且有多种体积尺寸可选(标准SD卡、TF卡等)的外部存储器SD卡(Secure Digital Memory Card)即:安全数码卡,它是在MMC的基础上发展而来,
原创
2022-01-04 11:38:12
2406阅读
STM32挂载SD卡记录日志 程序主要是在前一篇的基础上进行。使用CUBE配置STM32挂载TF卡,请看。 记录日志主要是将运行中的数据转换为字符串,然后再写入到SD卡。需要解决两个问题:程序中各种格式的数据变量转换为字符串;SD卡文件关闭后再次打开继续接着写。 解决第一个问题是使用函数sprintf(),函数具体定义和用法请看C标准库。 “%02d”是输出2位宽度的十进制,“%.1f”是输出浮点
SD的驱动和应用困扰了我很久,寒假的时候看到SD简化版物理层协议的时候就傻掉了,看到SD的驱动快3000行的代码也动摇了。这几天几种地看了一下SD卡的相关内容,总结了一些体会,感觉也没有那么恐怖了。我决定从分层上来讨论SD的驱动和应用,因为这样可以构建一个清晰的逻辑,且不知哪位计算机大师曾说过:一切计算机问题都可以用分层的方法来解决。 我自己把SD卡从驱动到应用共分为4层,从下至上依次为:驱动层、
STM32CubeMx之SD卡驱动1.SD卡简介 SD存储卡(Secure Digital Memory Card)是一种基于半导体快闪存储器的新一代高速存储设备。SD存储卡的技术是从MMC卡(MultiMedia Card)格式上发展而来,在兼容SD存储卡基础上发展了SDIO(SD Input/ Output)卡,此兼容性包括机械,电子,电力,信号和软件,通常将SD、S
推荐
原创
2022-11-30 09:20:57
1383阅读
点赞
用STM32F103完成对SD卡的数据读取一、SD卡协议原理1.SDIO协议2.SD卡物理结构3.SD卡寄存器列表4.SD卡初始化(SPI模式)5.SD卡读写(SPI模式)6.采用SPI方式,连线二、CubeMX创建工程三、代码1.主函数2.编译四、结果参考 一、SD卡协议原理1.SDIO协议SD卡(Secure Digital Memory Card)在我们的生活中已经非常普遍了,控制器对SD
本文翻译于ST官网文档,《Development guidelines for STM32Cube Expansion Packages》 文章目录介绍1. 总体信息2. 参考和首字母缩写词3. STM32Cube MCU软件包和STM32Cube扩展软件包3.1 STM32Cube MCU软件包3.2 STM32Cube扩展软件包4. 包装要求4.1 使用STM32CubeMX开发示例4.2 S
由于自己也在使用SD卡,使用的过程中也遇到了一些问题,下面是在EDN论坛上zxb1717高手的经验,希望可以帮助大家
调试关键点:
1. 上电时要延时足够长的时间给SD卡一个准备过程,在我的程序里是5秒,根据不同的卡设置不同的延时时间。SD卡初始化第一步在发送CMD命令之前,在片选有效的情况下首先要发送至少74个时钟,否则将有可能出现
SD卡一般支持两种读写模式,SPI和SDIO模式,SD卡的引脚排序如下图所示。SPI模式下有几个重要的操作命令,分别是:SD卡R1回应的格式如下SPI模式下的典型初始化过程如下:1、初始化硬件配置,SPI配置,IO配置等。2、上电延时。(>74CLK)3、复位卡。(CMD0)4、激活卡,内部初始化并获取卡的类型。5、查询OCR,获取供电情况。6、是否使用CRC(CMD59)。7、设置读写块数
转载
2024-03-30 09:09:49
360阅读
本文采用的HAL库版本为STM32Cube_FW_F1_V1.8.0(带Patch-CubeF1 1.8.4)。知识点一:SD卡数据线位宽的配置SD卡可以采用1位数据线模式,也可以采用4位数据线模式。但是必须确保STM32单片机的SDIO设置的数据线位宽,和SD卡上设置的数据线位宽是一致的。 将hsd.Init.BusWide设为SDIO_BUS_WIDE_4B,然后执行HAL_SD_Init函数
本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SDMMC外设读取SD卡数据。1. 准备工作硬件准备开发板 首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi):Micro SD卡 小熊派开发板板载 Micro SD 卡槽,最大支持 32 GB,需要提前自行准备一张 Micro SD卡,如图:软件准备需要安装好Keil - MDK及芯片对
SD初始化是SD卡操作的关键。初始化过程需要注意SD卡的类型。SD卡(2G以下)和SDHC卡(2G至32G)分别支持SD协议1.0及2.0,命令和初始化过程略有不同。总线模式分为SPI和SD两种,以SDHC卡SD模式通信为例,介绍SDHC初始化过程。一、SD Specification V2.0中基本概念1、命令Command  
本文主要利用STM32F103完成对SD卡的数据读取,介绍该实验的详细操作一、题目要求二、SD卡协议原理1、SD卡简述2、SD卡物理结构3、SD卡寄存器4、SD卡操作模式5、SD卡初始化(SPI模式)6、SD卡读取与写入(SPI模式)三、实验操作1、硬件准备2、连线3、HAL库配置4、代码分析5、实验结果分析四、SD卡累计写入及速率分析1、题目要求2、硬件准备3、实验操作五、总结 一、题目要求掌
转载
2024-05-21 20:09:23
1047阅读
卡从容量上讲分两种:标准容量和大容量,最小的是标准容量,小于等于2G 其中的访问关系如下: 卡分为两种模式:认证模式和传输模式,每一个模式包含着不同的状态,如下 以下主要讲其初始化过程:&n
STM32利用SPI读写SD卡的一些程序详解
关于SD卡的基础知识这里不做过多陈述,如果有对这方面感兴趣的朋友可以直接百度一下,有很多讲SD卡的文章,这里主要是针对SD卡的读写程序实现做一些详细说明。 SD卡的读写驱动程序是运用FATFS的基础,学了FATFS就可以在SD卡上创建文件夹及文件了。 我们先从main文件了解一下程序的执行流程 int main(void)
{
u
文章目录一、SD卡协议原理1、有关SD卡2、1.SDIO协议3、SD卡物理结构4、SD卡寄存器5、SD卡下SPI操作模式二、实例三、实验结果四、总结五、参考资料 一、SD卡协议原理1、有关SD卡很多单片机系统都需要大容量存储设备,以存储数据。目前常用的有 U 盘,FLASH 芯片,SD 卡等。他们各有优点,综合比较,最适合单片机系统的莫过于 SD 卡了,它不仅容量可以做到很大(32GB 以上),
转载
2024-04-02 09:37:24
3174阅读
本章参考资料《ARM Cortex™-M4F 技术参考手册》 -4.5 章节 SysTick Timer(STK), 和4.48 章节 SHPRx,其中 STK 这个章节有 SysTick 的简介和寄存器的详细描述。因为SysTick 是属于 CM4 内核的外设,有关寄存器的定义和部分库函数都在 core_cm4.h 这个头文件中实现。所以学习 SysTick 的时候可以参考这两个资料,一个是文档
目录一、SD卡简介1、SDIO简介2.SD卡物理结构二、STM32CubeMX建立工程1.配置管脚2.点击FATFS,勾选User-defined3.SYS配置 4.GPIO配置5.SPI1配置6.USART1配置7.时钟树配置8.修改堆栈大小三、程序编写 1.源代码下载2.修改接口里面的内容映射到SPI上3.main.c代码五、运行结果六、总结七、参考资料一、SD卡简介1、S