Arduino 通过其他设备伪装SD卡或通过两个设备共享一个SD卡

Arduino 通过其他设备伪装SD卡或通过两个设备共享一个SD卡,arduino,raspberry-pi,sd-card,spi,Arduino,Raspberry Pi,Sd Card,Spi,我正在寻找一个开始我的项目的提示 我有一个设备正在从SD卡读取数据。我无法以任何方式远程控制它-我只能通过在这个SD卡上保存新数据来“控制”这个设备。我需要手动操作-因此,如果我想更改10台设备上的某些数据,我需要取出10张sd卡,发送新数据,然后将其放回设备 1) 我想知道我是否可以用arduino或raspbery假装SD卡。 该设备将直接从arduino读取数据,而不是从SD卡读取数据。我可以很容易地控制Arduino 2) 第二种解决方案是两台设备共享一张SD卡。Arduino/Rasp

我正在寻找一个开始我的项目的提示

我有一个设备正在从SD卡读取数据。我无法以任何方式远程控制它-我只能通过在这个SD卡上保存新数据来“控制”这个设备。我需要手动操作-因此,如果我想更改10台设备上的某些数据,我需要取出10张sd卡,发送新数据,然后将其放回设备

1) 我想知道我是否可以用arduino或raspbery假装SD卡。 该设备将直接从arduino读取数据,而不是从SD卡读取数据。我可以很容易地控制Arduino

2) 第二种解决方案是两台设备共享一张SD卡。Arduino/RaspberryPi/Android设备将向SD卡发送数据,另一个设备将读取数据

但我想每10-15秒更改一次数据,这样共享一张SD卡就有问题了

你有什么办法解决这个问题吗?有可能吗? 编辑:
也许我没有说清楚,但是我不能改变阅读设备,我不能在那里安装任何东西。这是只从SD卡读取数据的blackbox设备。

我使用来对所有设备进行单向同步。只需在Dropbox中更改一个文件或文件夹,然后我的设备获取所有更改并写入SD卡

虽然这有一些挑战,但我花了一些时间开始工作。这主要是因为syncapi的设计不像个人电脑上的Dropbox那样自动下载文件。相反,它能够告诉哪些文件已经更改,然后在请求时懒洋洋地获取它们。因为这对于您的用例来说可能已经足够了,所以我需要脱机访问这些文件,并且必须在用户实际请求之前跳过一些限制,使其能够将文件下载到SD

如果您只需要相对简单的数据或小文件,我建议。请注意,我还没有使用这个系统的经验,但它看起来很有前途

编辑:


现在了解到上述情况对您来说是不可能的,那么在设备之间共享SD应该是可以的,我认为。您可以在写入SD时创建一个简单的空文件,如.lock,然后立即将其删除。这样,每当其中一个单元尝试读取数据时,如果它们看到.lock文件,就会知道在再次读取/写入之前应该等待一段时间。可以是一个简单的解决方案,以避免损坏数据。

基本上,您有两个选择:要么模拟SD卡,要么使用真正的SD卡,并在Arduino和读取设备之间切换

要模拟SD卡,您需要使用FPGA并编写大量VHDL/Verilog代码。微控制器软件无法做到这一点,因为涉及的时钟频率很高(主机可能会以几兆bps的速度向您询问数据)


此外,即使您能够做到这一点,您仍有可能需要“断开”SD卡与读卡器的连接,至少需要一段时间,当您进行更改时-否则,读卡器将不知道您已更改了卡的内容:它可能无法读取新文件,甚至可能会覆盖这些文件。

可能我没有明确提及,但我无法更改读取设备,我无法在那里安装任何内容。这是只从SD卡读取数据的blackbox设备。我明白了,这只是android的思维方式:)那么我没有任何聪明的想法。你知道读取设备是如何访问SD卡的吗。如果它使用SPI接口,您可能能够让RPi模拟SPI SD卡协议a,并将其作为SD卡显示给读卡器。