Arduino ACI lib打破了SPI

时间:2015-02-08 05:31:32

标签: arduino spi

我的项目需要蓝牙芯片(nrf8001)和SPI闪存模块。

在调用lib_aci_init之前,我可以读写闪存。初始之后,我不能。是否有任何理由ACI lib会禁用其他设备的SPI?

1 个答案:

答案 0 :(得分:0)

问题是SD卡和nrf8001都是SPI设备,而您使用的两个库都使用AVR的硬件SPI模块与它们通信。

函数lib_aci_init调用hal_aci_tl_init设置SPI以与nrf8001通信,并且这些设置很可能与SD卡的设置冲突。即使它们没有冲突,你也必须使用slave-select引脚或类似的东西来避免硬件冲突。