你好安德烈亚斯,
首先,对于所有快速传输命令,必须使用ST25DVTag.enableMailbox()命令启用邮箱。
问题1:
myST25DVTag.readMailboxMessage(0,0)将读取I2C接口写入的邮箱的完整内容。以下陈述是等效的。
response = myST25DVTag.readMailboxMessage(0,0);
完成相同的结果:
int len = myST25DVTag.readMailboxMessageLength();
response = myST25DVTag.readMailboxMessage(0,len);
问题2:
myST25DVTag.readMailboxMessage(0,1)将抛出BAD_PARAMETER STException。
这是因为这一事实
ST25DVTag。
readMailboxMessage(int address,int size)获取要从邮箱中读取的实际字节数。标签理解的RF命令返回(大小+ 1)字节。
要使用RF命令读取字节,您需要发送(大小+ 1)值为0.当对地址0执行此操作时,该命令将实际返回邮箱的全部内容,如问题1所示。
由于标记的行为,决定为参数元组(0,1)抛出BAD_PARAMETER异常。
如果要读取第一个字节,建议读取邮箱的完整内容,然后选择第一个字节。
关于你的问题3:
ST25 SDK可用于Android或任何Java应用程序。
readers 目录中的库为ST和FEIG ELECTRONIC的USB读卡器提供支持。
ST类型5读卡器支持快速命令,但不适用于Android手机。
有关快速传输模式流程的更多信息,请参阅本应用笔记:
http://www.st.com/resource/en/application_note/dm00328899.pdf
最好的祝福
以上来自于谷歌翻译
以下为原文
Hello Andreas,
First, for all the fast transfer commands , you must enable the mailbox with the ST25DVTag.enableMailbox() command.
For question 1:
myST25DVTag.readMailboxMessage(0,0) will read the full content of the mailbox as written by the I2C interface. The following statements are equivalent.
response = myST25DVTag.readMailboxMessage(0, 0);
accomplishes the same result as:
int len = myST25DVTag.readMailboxMessageLength();
response = myST25DVTag.readMailboxMessage(0, len);
For question 2:
myST25DVTag.readMailboxMessage(0,1) will throw a BAD_PARAMETER STException.
This arises from the fact that
ST25DVTag.
readMailboxMessage(int address, int size) takes the actual number of bytes that you want to read from the mailbox. The RF command understood by the tag returns (size + 1) bytes.
To read a byte with the RF command, you would need to send a (size + 1) value of 0. When doing so for address 0, the command will actually return the whole content of the mailbox, as seen in question 1.
Because of the tag's behavior, it was decided to throw a BAD_PARAMETER exception for the parameter tuple (0, 1).
If you want to read the first byte, it is recommended to read the full content of the mailbox then select the first byte.
Regarding your question 3:
The ST25 SDK can be used for Android or any Java applications.
Libraries in the readers directory provide support for USB readers from ST and FEIG ELECTRONIC.
Fast commands are supported by ST type 5 readers but do not apply to Android phones.
More information on the fast transfer mode flow can be found in this application note:
http://www.st.com/resource/en/application_note/dm00328899.pdf
Best regards
你好安德烈亚斯,
首先,对于所有快速传输命令,必须使用ST25DVTag.enableMailbox()命令启用邮箱。
问题1:
myST25DVTag.readMailboxMessage(0,0)将读取I2C接口写入的邮箱的完整内容。以下陈述是等效的。
response = myST25DVTag.readMailboxMessage(0,0);
完成相同的结果:
int len = myST25DVTag.readMailboxMessageLength();
response = myST25DVTag.readMailboxMessage(0,len);
问题2:
myST25DVTag.readMailboxMessage(0,1)将抛出BAD_PARAMETER STException。
这是因为这一事实
ST25DVTag。
readMailboxMessage(int address,int size)获取要从邮箱中读取的实际字节数。标签理解的RF命令返回(大小+ 1)字节。
要使用RF命令读取字节,您需要发送(大小+ 1)值为0.当对地址0执行此操作时,该命令将实际返回邮箱的全部内容,如问题1所示。
由于标记的行为,决定为参数元组(0,1)抛出BAD_PARAMETER异常。
如果要读取第一个字节,建议读取邮箱的完整内容,然后选择第一个字节。
关于你的问题3:
ST25 SDK可用于Android或任何Java应用程序。
readers 目录中的库为ST和FEIG ELECTRONIC的USB读卡器提供支持。
ST类型5读卡器支持快速命令,但不适用于Android手机。
有关快速传输模式流程的更多信息,请参阅本应用笔记:
http://www.st.com/resource/en/application_note/dm00328899.pdf
最好的祝福
以上来自于谷歌翻译
以下为原文
Hello Andreas,
First, for all the fast transfer commands , you must enable the mailbox with the ST25DVTag.enableMailbox() command.
For question 1:
myST25DVTag.readMailboxMessage(0,0) will read the full content of the mailbox as written by the I2C interface. The following statements are equivalent.
response = myST25DVTag.readMailboxMessage(0, 0);
accomplishes the same result as:
int len = myST25DVTag.readMailboxMessageLength();
response = myST25DVTag.readMailboxMessage(0, len);
For question 2:
myST25DVTag.readMailboxMessage(0,1) will throw a BAD_PARAMETER STException.
This arises from the fact that
ST25DVTag.
readMailboxMessage(int address, int size) takes the actual number of bytes that you want to read from the mailbox. The RF command understood by the tag returns (size + 1) bytes.
To read a byte with the RF command, you would need to send a (size + 1) value of 0. When doing so for address 0, the command will actually return the whole content of the mailbox, as seen in question 1.
Because of the tag's behavior, it was decided to throw a BAD_PARAMETER exception for the parameter tuple (0, 1).
If you want to read the first byte, it is recommended to read the full content of the mailbox then select the first byte.
Regarding your question 3:
The ST25 SDK can be used for Android or any Java applications.
Libraries in the readers directory provide support for USB readers from ST and FEIG ELECTRONIC.
Fast commands are supported by ST type 5 readers but do not apply to Android phones.
More information on the fast transfer mode flow can be found in this application note:
http://www.st.com/resource/en/application_note/dm00328899.pdf
Best regards
举报