主题中讨论的其他器件:MSP-EXP430G2ET、 RF430FRL152HEVM、、RF430FRL152H
大家好!
我正在将 TRF7970A BoosterPack 与 MSP-EXP430G2ET laucnhpad 搭配使用、以便通过 NFC 从 RF430FRL152HEVM 读取数据。
我提到并调整的 RF430FRL152HEVM 中的项目是 NFC 项目。 我进行了一些调整、以便可以使用 NFC_NDEF_Message 阵列通过 NFC 发送从 SPI (作为从器件的 RF430FRL152HEVM)接收的数据。 我编写一个 USCI_B0_VECTOR 的 ISR 来实现这一目的、代码如下所示。 除了调用一个用于初始化 SPI 总线的函数外、主函数没有发生任何变化。
#pragma vector = USCI_B0_VECTOR __interrupt void USCI_B0_ISR(void) { if(UCB0IFG &= UCRXIFG) { NFC_NDEF_Message[RxNum1] = SpiBusSlaveReceive(); RxNum1++; iscomend1 = 1; //return to the main function } }
然后 TRF7970A 会尝试与 RF430FRL1152H 通信、而传输的数据有误。 例如、如果 RF430FRL152H 上的 SPI 接收到的数据为十六进制格式的"40FA43EC"、证明在调试模式下检查 UCB0RXBUF 可以正常工作、那么 TRF7970A 使用 UART 将数据"FCC"打印到 PC、遗漏"40"和"43"。 此错误稳定显示、我尝试在 SPI 主器件中添加时间延迟、但没有帮助。
我不知道错了什么、因为有些数据可以正确传输、但丢失了一部分。 如果 RF430FRL152HEVM 的 UCB0RXBUF 可以接收数据、则 NFC_NDEF_Message 阵列 可能会写入接收到的 SPI 数据。 是否会出问题?
此外、到目前为止、我不需要使用 NFC 传输功能通过电话进行 NDEF 格式数据检测、目前 TRF7970A+MSP-EXP430G2ET 已足够。 所以我对 NFC_NDEF_Message 数组的调整没有遵守 NDEF 格式的规则。 它会导致错误吗? 因为我只是想传输一些值、而不是 URI 或类似内容。
提前感谢您!!
蔡华轩