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
本文采用的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函数
从容量上讲分两种:标准容量和大容量,最小的是标准容量,小于等于2G        其中的访问关系如下:    分为两种模式:认证模式和传输模式,每一个模式包含着不同的状态,如下      以下主要讲其初始化过程:&n
SD一般支持两种读写模式,SPI和SDIO模式,SD的引脚排序如下图所示。SPI模式下有几个重要的操作命令,分别是:SDR1回应的格式如下SPI模式下的典型初始化过程如下:1、初始化硬件配置,SPI配置,IO配置等。2、上电延时。(>74CLK)3、复位。(CMD0)4、激活,内部初始化并获取的类型。5、查询OCR,获取供电情况。6、是否使用CRC(CMD59)。7、设置读写块数
转载 2024-03-30 09:09:49
356阅读
本文主要利用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
1020阅读
1.硬件引脚介绍:本测试采用SPI模式读写SD,相关引脚配置如下:片选:SD_CS->PB13,对应SD的1脚,低电平有效时钟:SPI1_SCK->PA5,对应SD的5脚  主入从出:MISO->PA6,对应SD的7脚  主出从入:MOSI->PA7,对应SD的2脚2.初始化步骤:while(SD_Initialize()) { //提示检查S
STM32CubeMxSD驱动1.SD简介  SD存储(Secure Digital Memory Card)是一种基于半导体快闪存储器的新一代高速存储设备。SD存储的技术是从MMC(MultiMedia Card)格式上发展而来,在兼容SD存储基础上发展了SDIO(SD Input/ Output),此兼容性包括机械,电子,电力,信号和软件,通常将SD、SDIO俗称SD存储
转载 6月前
71阅读
文章目录一、SD协议原理1、有关SD2、1.SDIO协议3、SD物理结构4、SD寄存器5、SD下SPI操作模式二、实例三、实验结果四、总结五、参考资料 一、SD协议原理1、有关SD很多单片机系统都需要大容量存储设备,以存储数据。目前常用的有 U ,FLASH 芯片,SD 等。他们各有优点,综合比较,最适合单片机系统的莫过于 SD 了,它不仅容量可以做到很大(32GB 以上),
转载 2024-04-02 09:37:24
3158阅读
一、操作环境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
2401阅读
SD的驱动和应用困扰了我很久,寒假的时候看到SD简化版物理层协议的时候就傻掉了,看到SD的驱动快3000行的代码也动摇了。这几天几种地看了一下SD的相关内容,总结了一些体会,感觉也没有那么恐怖了。我决定从分层上来讨论SD的驱动和应用,因为这样可以构建一个清晰的逻辑,且不知哪位计算机大师曾说过:一切计算机问题都可以用分层的方法来解决。 我自己把SD从驱动到应用共分为4层,从下至上依次为:驱动层、
转载 5月前
29阅读
目录一、关于SD1.简介2.SD的寄存器3.SD读取与写入(SPI模式)二、实验操作1.仪器2.代码3.连线4.烧录程序5.串口调试助手初始化并写入文件6.sd卡里hello文档的确认三、总结四、参考资料 一、关于SD1.简介SD(Secure Digital Memory Card)U生在同年,可以称为表兄弟,也是一种基于半导体快闪记忆器(Nand Flash)的记忆设备,只是接
通过USB接口读写挂载的SDHAL库标准库 本文以STM32F407为例分别用HAL库(STM32CubeMX)和标准库实现SD对fatfs支持,以及通过USB接口读写SD。首先看电路连接: SD部分: USB接口:HAL库这种方式相对较为简单,提供自动生成工具,几乎没有什么代码量,但其中也有一些细节需要注意,跟着如下操作吧: 选择单片机型号(根据自己使用的片子选择): 时钟和调试
转载 2024-04-27 10:04:10
3115阅读
BootLoader关于Bootloader,从书上的文字描述,很难理解这个名词是什么,有什么用。这次用到了,算是有了更进一步的认识。一、知识点1、BootLoader就是单片机启动时候运行的一段小程序,这段程序负责单片机固件的更新,也就是单片机选择性的自己给自己下程序。可以更新,也可以不更新,更新的话,BootLoader更新完程序后,跳转到新程序运行;不更新的话,BootLoader直接跳转到
由于自己也在使用SD,使用的过程中也遇到了一些问题,下面是在EDN论坛上zxb1717高手的经验,希望可以帮助大家 调试关键点: 1.      上电时要延时足够长的时间给SD一个准备过程,在我的程序里是5秒,根据不同的卡设置不同的延时时间。SD初始化第一步在发送CMD命令之前,在片选有效的情况下首先要发送至少74个时钟,否则将有可能出现
STM32CubeMxSD驱动1.SD简介    SD存储(Secure Digital Memory Card)是一种基于半导体快闪存储器的新一代高速存储设备。SD存储的技术是从MMC(MultiMedia Card)格式上发展而来,在兼容SD存储基础上发展了SDIO(SD Input/ Output),此兼容性包括机械,电子,电力,信号和软件,通常将SD、S
推荐 原创 2022-11-30 09:20:57
1379阅读
1点赞
本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SDMMC外设读取SD数据。1. 准备工作硬件准备开发板 首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi):Micro SD 小熊派开发板板载 Micro SD 槽,最大支持 32 GB,需要提前自行准备一张 Micro SD,如图:软件准备需要安装好Keil - MDK及芯片对
转载 5月前
101阅读
MCU:STM32F429ZIT6 开发环境:STM32CubeMX+MDK5 外购了一个SPI接口的SD Card模块,想要实现SD存储数据的功能。首先需要打开STM32CubeMX工具。输入开发板MCU对应型号,找到开发板对应封装的MCU型号,双击打开(图中第三)。 此时,双击完后会关闭此界面,然后打开一个新界面。 然后,我们开始基本配置。 现在我们选
STM32 USB CDC VPC关键字STM32,STM32CubeMX,HAL库,USB,虚拟串口,串口不定长接收1.简介通过使用stm32cubemx,实现USB CDC虚拟串口,并与硬件串口进行数据传输,实现了硬件串口数据的不定长接收,以及USB虚拟串口超过64字节的数据接收,最终实现了一个简单的USB转串口功能。使用USB的CDC类来虚拟出一个串口与电脑进行通信,可以省去硬件转换电路,同
STM32利用SPI读写SD的一些程序详解 关于SD的基础知识这里不做过多陈述,如果有对这方面感兴趣的朋友可以直接百度一下,有很多讲SD的文章,这里主要是针对SD的读写程序实现做一些详细说明。 SD的读写驱动程序是运用FATFS的基础,学了FATFS就可以在SD上创建文件夹及文件了。 我们先从main文件了解一下程序的执行流程 int main(void) { u
转载 8月前
148阅读
  • 1
  • 2
  • 3
  • 4
  • 5