我的项目需要蓝牙芯片(nrf8001)和SPI闪存模块。
在调用lib_aci_init之前,我可以读写闪存。初始之后,我不能。是否有任何理由ACI lib会禁用其他设备的SPI?
答案 0 :(得分:0)
问题是SD卡和nrf8001都是SPI设备,而您使用的两个库都使用AVR的硬件SPI模块与它们通信。
函数lib_aci_init
调用hal_aci_tl_init
设置SPI以与nrf8001通信,并且这些设置很可能与SD卡的设置冲突。即使它们没有冲突,你也必须使用slave-select引脚或类似的东西来避免硬件冲突。