【雕爷学编程】Arduino动手做(52)---MicroSD卡读写模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种
的。鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐一做做实验,不管能否成功,都会记录下来---小小的进步或是搞不掂的问题,希望能够抛砖引玉。
【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验五十二:SPI接口Micro SD卡模块 TF卡读写卡器 (带电平转换芯片)

SN74LVC125A
具有三态输出的四路总线缓冲器


逻辑系列 LVC
每片芯片元件数目 4
最长传播延迟时间@最长CL 5.3 ns @ 2.7 V
最大高电平输出电流 -24mA
最大低电平输出电流 24mA
安装类型 表面贴装
封装类型 TSSOP
引脚数目 14
尺寸 5 x 4.4 x 1.15mm
高度 1.15mm
长度 5mm
最大工作电源电压 3.6 V
最高工作温度 +125 °C
最小工作电源电压 1.65 V
传输延迟测试条件 50pF
最低工作温度 -40 °C
宽度 4.4mm




该模块(MicroSD Card Adapter)是Micro SD卡读写模块,通过文件系统及SPI接口驱动程序,单片机系统即可完成MicroSD卡内的文件进行读写。Arduino用户可直接使用Arduino IDE自带的SD卡程序库即可完成卡的初始化和读写。

模块特点如下
1.支持Micro SD卡、Micro SDHC卡(高速卡)
2.板载电平转换电路,即接口电平可为5V或3.3V
3.供电电源为4.5V~5.5V,板载3.3V稳压电路
4.通信接口为标准SPI接口
5.4个M2螺丝定位孔,便于安装

模块电原理图




制接口:共 6 个引脚(GND、VCC、MISO、MOSI、SCK、CS),GND 为地,VCC 为供
电电源,MISO、MOSI、SCK 为 SPI 总线,CS 为片选信号脚;
3.3V 稳压电路:LDO 稳压输出的 3.3V 为电平转换芯片、Micro SD 卡供电;
电平转换电路:往 Micro SD 卡方向的信号转换成 3.3V,MicroSD 卡往控制接口方向的 MISO
信号也转换成了 3.3V,一般 AVR 单片机系统都能读取该信号;
Micro SD 卡座:是自弹式卡座,方便卡的插拔。
定位孔:4 个 M2 螺丝定位孔,孔径为 2.2mm,使模块便于安装定位,实现模块间组合。

实验器材:
1 个 Arduino 兼容主板 Catduino(不熟悉开源硬件的可以将其理解为 Atmega328P 单片机
开 发板)及一根 mini USB 线;
1 个 Micro SD 卡模块;
1 张三星的 2G 的 Micro SD 卡;
1 个 Arduino 接口扩展板 Base shield(内链接);
6 根母对母杜邦线,用于连接模块的控制接口和 Base Shield 上引出的 SPI 接口。

实验步骤:
1. 将 Base Shield 直接插到 Catduino 主板上,确保 Micro SD 卡已格式化为 FAT16 或 FAT32
格式,并将其插到 Micro SD 卡模块上。
2. 用 6 根母对母杜邦线将 Micro SD 卡模块与 Base Shield 的 SPI 接口连接起来,如下表所示

3. 用mini USB将Catduino连接起来,如果是首次使用该主板,其USB转串口驱动可从Arduino的IDE目录下的drivers找到USB Drivers。
4. Micro SD卡读写的相关程序可使用Arduino IDE自带的程序,目录是
..\Arduino-1.0\libraries\SD。重新打开Arduino IDE,点击工具栏的Open按钮,打开SD中的CardInfo例程,如下图所示,需要注意的是片选信号脚应改成实际连接到模块的片选脚,在本实验中选择D10。
选好串口、板子名称,点击烧录按钮,即可烧录。该例程展示的是如何读取 Micro SD 卡的信息,包括卡的类型、文件系统类型、存储容量,也列出卡中的文件名称。点击 Serial Monitor即可查看。

/*
【Arduino】168种传感器模块系列实验(52)
实验五十二:SPI接口Micro SD卡模块TF卡读写卡器 (带电平转换芯片)
Arduino 的 uno 引脚
CS-------------10
MOSI(DI)------11
MISO(DO)------12
CLK------------13
*/
#include <SPI.h>
#include <SD.h>
File myFile;
void setup()
{
Serial.begin(9600);
while (!Serial)
{
;
}
Serial.print("Initializing SD card...");
if (!SD.begin(10)) {
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
myFile = SD.open("123456.TXT");
if (myFile) {
Serial.println("123456.txt:");
Serial.println("↓↓↓↓");
while (myFile.available())
{
Serial.write(myFile.read());
}
myFile.close();
} else
{
Serial.println("error opening 123456.txt");
}
}
void loop() {
}




【雕爷学编程】Arduino动手做(52)---MicroSD卡读写模块的更多相关文章
- 「雕爷学编程」Arduino动手做(24)——水位传感器模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
- 【雕爷学编程】Arduino动手做(51)---触摸按键模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(9)——火焰传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(10)——敲击传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(15)——手指侦测心跳模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 【雕爷学编程】Arduino动手做(16)---数字触摸传感器
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(14)——倾斜角度模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(13)——触摸开关模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(12)——霍尔磁力模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
随机推荐
- Python爬虫篇(代理IP)--lizaza.cn
在做网络爬虫的过程中经常会遇到请求次数过多无法访问的现象,这种情况下就可以使用代理IP来解决.但是网上的代理IP要么收费,要么没有API接口.秉着能省则省的原则,自己创建一个代理IP库. 废话不多说, ...
- Ansible playbook Vault 加密
Ansible playbook Vault 加密详解与使用案例 主机规划 添加用户账号 说明: 1. 运维人员使用的登录账号: 2. 所有的业务都放在 /app/ 下「yun用户的家目录」,避免业务 ...
- 第八章服务器raid及配置实战
版本 特点 磁盘个数 可用空间 故障磁盘数 应用环境 RAID0 读写速度快,数据容易丢失 两个 全部 一块 测试,临时性 RAID1 读写速度慢,数据可靠 至少两个,可以2的倍数 总容量的一半 ...
- C++操作Kafka使用Protobuf进行跨语言数据交互
C++操作Kafka使用Protobuf进行跨语言数据交互 Kafka 是一种分布式的,基于发布 / 订阅的消息系统.主要设计目标如下: 以时间复杂度为 O(1) 的方式提供消息持久化能力,即使对 T ...
- 【Linux常见命令】echo命令
echo - display a line of text 打印输出内容的常用命令,可以结合重定向>和追加>>对文件进行覆盖或追加内容. 语法: echo [SHORT-OPTION ...
- 解决Vue-cli3.0下scss文件编译过慢、卡顿问题
在使用Vue-cli 3.0构建的项目中,可能存在项目编译过慢的问题,具体表现在编译时会在某一进度比如40%时停顿,等好一会儿才能够编译完成.这使得浏览器中的实时预览也会卡顿,不利于我们快速查看效果, ...
- Vs Code在Vue项目中v-for指令提示错误的解决办法
最近在做一个Vue项目,在其中用到v-for指令时,发现Vs Code报错,如下图(代码是没有任何问题的),在网上找了一下解决办法,希望能帮助到更多人. 解决方法: 打开 文件-首选项-设置 将 ...
- c/c++头文件的摘抄
C/C++常用头文件 以及简单应用介绍 C/C++头文件一览 C #include <assert.h> //设定插入点 #include <ctype.h> //字符处理 # ...
- gVim配置文件分享
前言 直接可以把这个配置覆盖掉现在安装目录Vim底下的"_vimrc"文件 效果图 Code: set number set tabstop=4 set softtabstop=4 ...
- U盘安装Proxmox VE(一)
转自我的个人博客:U盘安装Proxmox VE(一) 年前搞了个星际蜗牛B款机箱,利用手头之前海淘dq77kb组装了个四盘位的Server. 组装完毕后,直接在实体机安装了centos 7.使用这几个 ...