主题中讨论的其他器件: MSP430G2553、 MSP430F2370
您好!
在过去的几天里、我将使用自己的源代码对 TRF7970A EVM 进行编程。 我想读取 ISO15693标签 ID。
我的问题是 TRF7970一直在 IRQ 引脚(13)上以 大约2kHz 的频率向我发送中断、并且如果我读取了 IRQ 状态寄存器的值、我会得到(0xC6)。
我的 TRF 初始设置为:
delay_ms (2);
SPI_SS_HIGH;
delay_ms (4);
使能;
delay_ms (1);
SPI_SEND_COMMAND (SOFT_INIT);
SPI_SEND_COMMAND (空闲);
delay_ms (3);
SPI_SEND_COMMAND (RESET);
delay_ms (2);
* SPI.txbuf = 0x31;//芯片状态控制
*(SPI.txbuf + 1)= 0x02;//ISO 控制
*(SPI.txbuf + 2)= 0x00;//ISO 模式选项1
*(SPI.txbuf + 3)= 0x00;//ISO 模式选项2
*(SPI.txbuf + 4)= 0xC1;//TX 定时器
*(SPI.txbuf + 5)= 0xBB;//TX 定时器低电平
*(SPI.txbuf + 6)= 0x00;//TX 脉冲长度控制
*(SPI.txbuf + 7)= 0x25;//RX 无响应等待时间
*(SPI.txbuf + 8)= 0x1F;//RX 等待时间
*(SPI.txbuf + 9)= 0x31;//调制器控制
*(SPI.txbuf + 10)= 0x40;//RX 特殊设置
*(SPI.txbuf + 11)= 0x87;//稳压器控制
SPI_WRITE (12、CHIP_STATUS_CONTROL);
delay_ms (1);
* SPI.txbuf = 0x3F;//启用无响应中断
SPI_WRITE (1、IRQ_MASK);
* SPI.txbuf = 0x00;
SPI_WRITE (1、NFC_TARGET_LEVEL);
以及用于读取标签 ID 的命令:
SPI_SEND_COMMAND (RESET);
SPI_SEND_COMMAND (Transmit、CRC);
SPI.txbuf[0]= 0x26;
SPI.txbuf[1]= 0x01;
SPI.txbuf[2]= 0x00;
FIFO_WRITE (3);
您能不能给我一些建议、告诉我我我发生了什么错误