【Makeblock使用】SD信息读取-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 11039|回复: 0

【Makeblock使用】SD信息读取

[复制链接]
发表于 2016-8-4 11:05 | 显示全部楼层 |阅读模式
最近mega pi不在身边,用uno代替,后面会讲一下接线
程序使用arduino库中的SD文件夹中的cardinfo例程,主要实现SD信息读取,卡内文件获取。SD使用市面常见的小模块,自带电平转换电路,芯片AMS1117,如果是51单片机控制SD,必须加如下电平转换电路
2.jpg
实物连接
20160804_103232.jpg
下载程序,串口输出如下,
1.jpg
如果是mega pi,接线如下
mega2560芯片                              
                                          
CS/PCINT0                53        數字I/O
SCK/PCINT1              52        數字I/O
MOSI/PCINT2            51       數字I/O
MISO/PCINT3            50        數字I/O
下面讲一下程序
程序流程:
初始化--打开串口-判断串口是否有数据-有数据则判断SD是否存在-判断SD卡类型-判断SD文件系统-输出SD容量-判断是否有文件,有则输出文件列表

关于CS引脚,如果是arduino ethernet或一般micro SD模块,程序默认D4,但要注意adafruit和SParkfun这两家的SD模块,需要变换,如下
// Arduino Ethernet shield: pin 4
// Adafruit SD shields and modules: pin 10
// Sparkfun SD shield: pin 8
注意,ethernet扩展板的pin4默认输出,即使不用这个脚,10脚(mega pin53)都要设置为输出,否则SD库无法使用,说明如下
// On the Ethernet Shield, CS is pin 4. It's set as an output by default.
  // Note that even if it's not used as the CS pin, the hardware SS pin
  // (10 on most Arduino boards, 53 on the Mega) must be left as an output
  // or the SD library functions will not work.
程序中确实有这句,虽然我们没有用D10
pinMode(10, OUTPUT);
SD卡类型有SD1、SD2、SDHC,大多数SD模块支持的SD类型容量是2G以下,SDHC的容量是32G以下,   

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 07:36 , Processed in 0.113067 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表