使用Sparkfun的MP3播放器屏蔽与Arduino以太网Pro - SPI问题

使用Sparkfun的MP3播放器屏蔽与Arduino以太网Pro - SPI问题

问题描述:

我使用Sparkfun的Arduino Ethernet Pro板和MP3播放器屏蔽(http://www.sparkfun.com/products/10536和http://www.sparkfun.com/products/10628使用Sparkfun的MP3播放器屏蔽与Arduino以太网Pro - SPI问题

我试图用通过Sparkfun提供的例子,但我一直在为相同的错误,我已经明确了以初始化SD卡(我使用的是SdFat)上运行。

敲定的核心问题,我试图从SdFat库运行“SdInfo”的例子。这是我的输出:

SdFat版本:20111205

类型的任何字符开始

card.init失败

SD错误码:0X1

SD errordata子:0X0

如果我改变SS_PIN从9吨在Sd2PinMap.h中,每个Sparkfun指令(http://www.sparkfun.com/tutorials/295)中都有10个sdcard.init(...)方法挂起。

我认为这个问题是因为W5100以太网芯片和MP3播放器屏蔽之间的冲突。

是否有任何冲突的端口,我不知道的?或者我需要禁用W5100芯片?

您使用的是什么尺寸的SD卡? (尝试使用兼容性为< 4GB的SD卡) 根据Sparkfun发布的原理图,您不需要将其更改为第10针。 你也看过sparkfun页面,试过吗? madsci's Library 并在声明试试这个init命令card.init(SPI_FULL_SPEED,9) ..让我知道那是对你的作品 -Ralim

+0

我使用SparkFun的2GB SD卡,所以不应该是一个问题。 我得到了声音工作,所以我现在可以播放存储在RAM中的mp3,所以我确认了这一点。 我试过madsci的图书馆,没有运气仍然寿。我试图找出问题并制作一个简单的程序,它只是从SD卡中检索信息。 我试着通过将引脚6(MP3_XDS)和7(MP3_DREQ)设置为高电平并将引脚8(MP3_RESET)设置为低电平来禁用MP3解码器。 我通过设置销10高(芯片选择引脚) 我初始化与销9作为芯片选择引脚SD卡禁用W5100以太网芯片。 – CodeMonkey 2012-04-14 22:51:54

+0

我可以看到默认硬件SS引脚为10,与以太网芯片选择引脚相同。这是否导致任何冲突? – CodeMonkey 2012-04-14 22:57:14

你必须与所有的SPI设备的芯片选择你的冲突正在使用。 SparkFun针对MP3屏蔽的“快速入门”指南讨论了如何更改SD库以使用MP3屏蔽。您需要进行类似的更改,以便您可以使用带有MP3屏蔽的另一个CS引脚,并为SD卡和W5100留出9和10。

当使用多个SPI器件,最好列出CS引脚出来。当你添加一个新的SPI设备时,就像使用MP3屏蔽一样,你将能够看到哪个引脚已经在做什么。

+0

据我可以从原理图中看到以下引脚是CS引脚: 引脚10:W5100(以太网) 引脚9:SD 引脚6:MP3解码器 这似乎不会导致任何冲突,我错了吗? – CodeMonkey 2012-04-15 16:34:49

+0

今天我已经看到了更进一步,我仍然没有得到SD卡的工作。 我得出的结论是,W5100芯片可能使用引脚9,你/任何人都可以确认/否认?我认为这个图表不准确,所以Eagle可能不得不使用。 原理图:http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Dev/Arduino/Boards/Arduino-Ethernet-v112pg.pdf 鹰文件:http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Dev/Arduino/Boards /Arduino-Ethernet-v11.zip 谢谢! – CodeMonkey 2012-04-18 03:02:57