PN532没有响应我的SPI命令(返回0xAA)

时间:2015-02-16 12:22:22

标签: nfc spi

我正在尝试使用PN532(NFC控制器)。最近,我的SPI通讯中有些东西已关闭。我通过要求firmewareversion(D4 02)开始通信。接下来我尝试设置SAM-Config。但是PN532不会给出ACK或响应。

我观察到的是这个。 (全部以十六进制)

GetFirmewareversion --- ACK<br>
MOSI: 01 00 00 FF 02 FE D4 02 2A 00 --- 02 00 03 00 00 00 00 00 00<br>
MISO: 00 FF FF FF FF FF FF FF FF FF --- FF 01 01 00 00 FF 00 FF 00

Receive Firmewareversion after ACK<br>
MOSI: 02 00 03 00 00 00 00 00 00 00 00 00 00 00 00<br>
MISO: 00 01 01 00 FF 06 FA D5 03 32 01 06 07 E8 00

Set SAMConfig --- see if ready(endless)<br>
MOSI: 01 00 00 FF 05 FB D4 14 01 14 01 02 00 --- 02 00 --- 02 00 --- 02 00<br>
MISO: AA AA AA AA AA AA AA AA AA FF FF FF FF --- FF 00 --- 00 00 --- 00 00

当我编写我的getFiremware时,他会响应0xFF,但是当我尝试设置SAM时,他总是以0xAA响应。他也从不回复对setSAMConfig的确认或回复。

我的错误在哪里?来自哪里?怎么解决? THX提前。

1 个答案:

答案 0 :(得分:1)

在断言PN532芯片选择后插入一些延迟。

有同样的问题,这对我有用:

void pn532_select (void)  
{  
  FIO2CLR = PN532_CS;       // assert CS  
  msleep (1);               // relax a bit  
}