SPI多主单从问题
我现在需要用两块arduino连接到一个SPI接口的SD卡模块上,由于暂时没有数字开关,我使用继电器来切换不同的arduino连接SD卡,如下图所示。平时Arduino2一直连上SD卡,当Arduino1需要使用SD卡时,向Arduino2发出中断,然后打开继电器,使得Arduino1连接上SD卡,Arduino2断开。
那么现在问题来了,Arduino1读写SD卡都没有问题,Arduino2读没有问题,但写入时,执行到SD.open(filename,FILE_WRITE);就一直死机,这是怎么回事啊?
是不是SPI的SCK信号发生问题,还是什么原因呢?谢谢! 其实你不用那么麻烦的,可以arduino1和2用串口连接,当1要读写卡时通过串口发信息给2,由2来执行读写,不就行了。 fish6823 发表于 2015-1-6 21:59 static/image/common/back.gif
其实你不用那么麻烦的,可以arduino1和2用串口连接,当1要读写卡时通过串口发信息给2,由2来执行读写,不就 ...
我现在1是接有传感器的,需要实时响应,所以1传感器检测到后,需要立刻存入SD卡,并返回是否成功。而2如果在读卡的过程中被中断,要求写入1传过来的数据,会不会造成冲突啊?
而且在2被中断的时候,它的串口还可以接受数据吗?arduino.cc上说“Serial data received while in the function may be lost” 问题解决了,我File类型的变量本来是放在函数里的,现在我把它设为全局变量就解决了。好奇怪啊,是bug吗?不科学啊! 实现功能是两个主机轮流读取SD卡吗? 感觉一个就可以实现, mhtt 发表于 2015-1-7 09:54 static/image/common/back.gif
我现在1是接有传感器的,需要实时响应,所以1传感器检测到后,需要立刻存入SD卡,并返回是否成功。而2如果 ...
2读卡时被中断如果有影响的话,你现在的模式也有影响的。
2被中断后才通过串口传数据,应该没有问题的,丢失的只是中断前串口遗留的未读数据,不影响后面的。 suoma 发表于 2015-1-8 18:21 static/image/common/back.gif
实现功能是两个主机轮流读取SD卡吗?
平时2一直读,1需要读了就让1读 fish6823 发表于 2015-1-9 11:09 static/image/common/back.gif
2读卡时被中断如果有影响的话,你现在的模式也有影响的。
2被中断后才通过串口传数据,应该没有问题的, ...
我现在串口在接受另一个传感器的值,所以不能丢,一丢就会出问题的 楼主你好,请问你的文件名长度有没有很长(比如是拿日期时间来做文件名的),然后这时候open就会失败,你有没有试过?有没有解决的办法?
页:
[1]