你好ST支持,
谢谢您的回复。
我终于有时间尝试你的建议,但我仍然无法让Android应用程序正确读取i2c写的NDEF消息。
我暗示添加了NDEF标题。原始消息'Abc
'是通过Android应用程序编写的。我正在尝试更新消息以包含'hello world
'通过i2c
以下是我通过i2c发送/接收的命令/回复。
下午3:08:34
杀死RF
[S _] [W _] [02] [AC] [52] [P_]
下午3:08:34
selectNFC
[S _] [W _] [11] [AC] [02] [00] [A4] [04] [00] [07] [D2] [76] [00] [00] [85] [01] [01 ] [00] [35] [C0] [P_]
下午3:08:35
5个回复字节读取
[S _] [02] [90] [00] [F1] [09] [P_]
下午3:08:35
选择cc
[S _] [W _] [0B] [AC] [03] [00] [A4] [00] [0℃] [02] [E1] [03] [D2] [AF] [P_]
下午3:08:35
5个回复字节读取
[S _] [03] [90] [00] [2D] [53] [P_]
下午3:08:35
读cc长度
[S _] [W _] [09] [AC] [02] [00] [B0] [00] [00] [02] [6B] [7D] [P_]
下午3:08:35
7个回复字节读取
[S _] [02] [00] [0F] [90] [00] [44] [45] [P_]
下午3:09:58
读取cc文件
[S _] [W _] [09] [AC] [03] [00] [B0] [00] [00] [0F] [A5] [A2] [P_]
下午3:10:03
读取20个回复字节
[S _] [03] [00] [0F] [20] [00] [F6] [00] [F6] [04] [06] [00] [01] [20] [00] [00] [00 ] [90] [00] [A9] [F3] [P_]
下午3:10:04
选择NDEF
[S _] [W _] [0B] [AC] [02] [00] [A4] [00] [0℃] [02] [00] [01] [3E] [FD] [P_]
下午3:10:04
5个回复字节读取
[S _] [02] [90] [00] [F1] [09] [P_]
下午3:13:26
擦除NDEF长度
[S _] [W _] [0B] [AC] [03] [00] [D6] [00] [00] [02] [00] [00] [6B] [37] [P_]
下午3:13:37
5个回复字节读取
[S _] [03] [90] [00] [2D] [53] [P_]
下午3:13:56
使用'hello world'更新二进制文件
[S _] [W _] [1B] [AC] [02] [00] [D6] [00] [02] [12] [D1] [01] [0E] [54] [02] [65] [6E ] [68] [65] [6C] [6C] [6F] [20] [77] [6F] [72] [6C] [64] [EC] [5C] [P_]
下午3:15:17
更新ndef长度
[S _] [W _] [0B] [AC] [03] [00] [D6] [00] [00] [02] [00] [12] [F8] [04] [P_]
下午3:15:21
5个回复字节读取
[S _] [03] [90] [00] [2D] [53] [P_]
下午3:18:21
取消
[S _] [W _] [04] [AC] [C2] [E0] [B4] [P_]
下午3:18:22
读取3个回复字节
[S _] [C2] [E0] [B4] [P_]
文档声称应该为UpdateBinary回复读取5个字节,但CRC不匹配(但如果省略第5个字节则正确)。
发送ReadBinary过程的命令后,输出为
[S _] [02] [D1] [01] [06] [54] [02] [65] [6E] [41] [62] [63] [6C] [6F] [20] [77] [6F ] [72] [6C] [64] [90] [00] [03] [11] [P_]
ASCII中的数据最终为
'阿布克洛世界
“
不应该是这种情况,因为UpdateBinary命令的偏移量是02(消息的开头,超过为NDEF消息长度指定的字节)。
你能否谈谈这个问题?
再次感谢,
乔恩
以上来自于谷歌翻译
以下为原文
Hello ST support,
Thank you for your reply.
I finally had time to try your suggestion, however I am still unable to get the Android app to correctly read the NDEF message written by i2c.
I added the NDEF header as hinted. The original message 'Abc
' was written via the Android app. I am trying to update the message to contain 'hello world
' via i2c
Here are the commands/replies that I am sending/receiving via i2c.
3:08:34 PM
kill RF
[S_][W_][02][AC][52][P_]
3:08:34 PM
selectNFC
[S_][W_][11][AC][02][00][A4][04][00][07][D2][76][00][00][85][01][01][00][35][C0][P_]
3:08:35 PM
5 reply bytes read
[S_][02][90][00][F1][09][P_]
3:08:35 PM
select cc
[S_][W_][0B][AC][03][00][A4][00][0C][02][E1][03][D2][AF][P_]
3:08:35 PM
5 reply bytes read
[S_][03][90][00][2D][53][P_]
3:08:35 PM
read cc length
[S_][W_][09][AC][02][00][B0][00][00][02][6B][7D][P_]
3:08:35 PM
7 reply bytes read
[S_][02][00][0F][90][00][44][45][P_]
3:09:58 PM
read cc file
[S_][W_][09][AC][03][00][B0][00][00][0F][A5][A2][P_]
3:10:03 PM
20 reply bytes read
[S_][03][00][0F][20][00][F6][00][F6][04][06][00][01][20][00][00][00][90][00][A9][F3][P_]
3:10:04 PM
select NDEF
[S_][W_][0B][AC][02][00][A4][00][0C][02][00][01][3E][FD][P_]
3:10:04 PM
5 reply bytes read
[S_][02][90][00][F1][09][P_]
3:13:26 PM
erase NDEF length
[S_][W_][0B][AC][03][00][D6][00][00][02][00][00][6B][37][P_]
3:13:37 PM
5 reply bytes read
[S_][03][90][00][2D][53][P_]
3:13:56 PM
update binary with 'hello world'
[S_][W_][1B][AC][02][00][D6][00][02][12][D1][01][0E][54][02][65][6E][68][65][6C][6C][6F][20][77][6F][72][6C][64][EC][5C][P_]
3:15:17 PM
update ndef length
[S_][W_][0B][AC][03][00][D6][00][00][02][00][12][F8][04][P_]
3:15:21 PM
5 reply bytes read
[S_][03][90][00][2D][53][P_]
3:18:21 PM
deselect
[S_][W_][04][AC][C2][E0][B4][P_]
3:18:22 PM
3 reply bytes read
[S_][C2][E0][B4][P_]
The documentation claims that 5 bytes should be read for the UpdateBinary reply, however the CRC does not match (but it is correct if the 5th byte is omitted).
After the commands for the ReadBinary procedure are sent, the output is
[S_][02][D1][01][06][54][02][65][6E][41][62][63][6C][6F][20][77][6F][72][6C][64][90][00][03][11][P_]
The data in ASCII ends up as
'Abclo world
'
which should not be the case since the offset for the UpdateBinary command is 02 (beginning of the message, past the bytes designated for the NDEF message length).
Can you please shed some light on this issue?
Thanks again,
Jon
你好ST支持,
谢谢您的回复。
我终于有时间尝试你的建议,但我仍然无法让Android应用程序正确读取i2c写的NDEF消息。
我暗示添加了NDEF标题。原始消息'Abc
'是通过Android应用程序编写的。我正在尝试更新消息以包含'hello world
'通过i2c
以下是我通过i2c发送/接收的命令/回复。
下午3:08:34
杀死RF
[S _] [W _] [02] [AC] [52] [P_]
下午3:08:34
selectNFC
[S _] [W _] [11] [AC] [02] [00] [A4] [04] [00] [07] [D2] [76] [00] [00] [85] [01] [01 ] [00] [35] [C0] [P_]
下午3:08:35
5个回复字节读取
[S _] [02] [90] [00] [F1] [09] [P_]
下午3:08:35
选择cc
[S _] [W _] [0B] [AC] [03] [00] [A4] [00] [0℃] [02] [E1] [03] [D2] [AF] [P_]
下午3:08:35
5个回复字节读取
[S _] [03] [90] [00] [2D] [53] [P_]
下午3:08:35
读cc长度
[S _] [W _] [09] [AC] [02] [00] [B0] [00] [00] [02] [6B] [7D] [P_]
下午3:08:35
7个回复字节读取
[S _] [02] [00] [0F] [90] [00] [44] [45] [P_]
下午3:09:58
读取cc文件
[S _] [W _] [09] [AC] [03] [00] [B0] [00] [00] [0F] [A5] [A2] [P_]
下午3:10:03
读取20个回复字节
[S _] [03] [00] [0F] [20] [00] [F6] [00] [F6] [04] [06] [00] [01] [20] [00] [00] [00 ] [90] [00] [A9] [F3] [P_]
下午3:10:04
选择NDEF
[S _] [W _] [0B] [AC] [02] [00] [A4] [00] [0℃] [02] [00] [01] [3E] [FD] [P_]
下午3:10:04
5个回复字节读取
[S _] [02] [90] [00] [F1] [09] [P_]
下午3:13:26
擦除NDEF长度
[S _] [W _] [0B] [AC] [03] [00] [D6] [00] [00] [02] [00] [00] [6B] [37] [P_]
下午3:13:37
5个回复字节读取
[S _] [03] [90] [00] [2D] [53] [P_]
下午3:13:56
使用'hello world'更新二进制文件
[S _] [W _] [1B] [AC] [02] [00] [D6] [00] [02] [12] [D1] [01] [0E] [54] [02] [65] [6E ] [68] [65] [6C] [6C] [6F] [20] [77] [6F] [72] [6C] [64] [EC] [5C] [P_]
下午3:15:17
更新ndef长度
[S _] [W _] [0B] [AC] [03] [00] [D6] [00] [00] [02] [00] [12] [F8] [04] [P_]
下午3:15:21
5个回复字节读取
[S _] [03] [90] [00] [2D] [53] [P_]
下午3:18:21
取消
[S _] [W _] [04] [AC] [C2] [E0] [B4] [P_]
下午3:18:22
读取3个回复字节
[S _] [C2] [E0] [B4] [P_]
文档声称应该为UpdateBinary回复读取5个字节,但CRC不匹配(但如果省略第5个字节则正确)。
发送ReadBinary过程的命令后,输出为
[S _] [02] [D1] [01] [06] [54] [02] [65] [6E] [41] [62] [63] [6C] [6F] [20] [77] [6F ] [72] [6C] [64] [90] [00] [03] [11] [P_]
ASCII中的数据最终为
'阿布克洛世界
“
不应该是这种情况,因为UpdateBinary命令的偏移量是02(消息的开头,超过为NDEF消息长度指定的字节)。
你能否谈谈这个问题?
再次感谢,
乔恩
以上来自于谷歌翻译
以下为原文
Hello ST support,
Thank you for your reply.
I finally had time to try your suggestion, however I am still unable to get the Android app to correctly read the NDEF message written by i2c.
I added the NDEF header as hinted. The original message 'Abc
' was written via the Android app. I am trying to update the message to contain 'hello world
' via i2c
Here are the commands/replies that I am sending/receiving via i2c.
3:08:34 PM
kill RF
[S_][W_][02][AC][52][P_]
3:08:34 PM
selectNFC
[S_][W_][11][AC][02][00][A4][04][00][07][D2][76][00][00][85][01][01][00][35][C0][P_]
3:08:35 PM
5 reply bytes read
[S_][02][90][00][F1][09][P_]
3:08:35 PM
select cc
[S_][W_][0B][AC][03][00][A4][00][0C][02][E1][03][D2][AF][P_]
3:08:35 PM
5 reply bytes read
[S_][03][90][00][2D][53][P_]
3:08:35 PM
read cc length
[S_][W_][09][AC][02][00][B0][00][00][02][6B][7D][P_]
3:08:35 PM
7 reply bytes read
[S_][02][00][0F][90][00][44][45][P_]
3:09:58 PM
read cc file
[S_][W_][09][AC][03][00][B0][00][00][0F][A5][A2][P_]
3:10:03 PM
20 reply bytes read
[S_][03][00][0F][20][00][F6][00][F6][04][06][00][01][20][00][00][00][90][00][A9][F3][P_]
3:10:04 PM
select NDEF
[S_][W_][0B][AC][02][00][A4][00][0C][02][00][01][3E][FD][P_]
3:10:04 PM
5 reply bytes read
[S_][02][90][00][F1][09][P_]
3:13:26 PM
erase NDEF length
[S_][W_][0B][AC][03][00][D6][00][00][02][00][00][6B][37][P_]
3:13:37 PM
5 reply bytes read
[S_][03][90][00][2D][53][P_]
3:13:56 PM
update binary with 'hello world'
[S_][W_][1B][AC][02][00][D6][00][02][12][D1][01][0E][54][02][65][6E][68][65][6C][6C][6F][20][77][6F][72][6C][64][EC][5C][P_]
3:15:17 PM
update ndef length
[S_][W_][0B][AC][03][00][D6][00][00][02][00][12][F8][04][P_]
3:15:21 PM
5 reply bytes read
[S_][03][90][00][2D][53][P_]
3:18:21 PM
deselect
[S_][W_][04][AC][C2][E0][B4][P_]
3:18:22 PM
3 reply bytes read
[S_][C2][E0][B4][P_]
The documentation claims that 5 bytes should be read for the UpdateBinary reply, however the CRC does not match (but it is correct if the 5th byte is omitted).
After the commands for the ReadBinary procedure are sent, the output is
[S_][02][D1][01][06][54][02][65][6E][41][62][63][6C][6F][20][77][6F][72][6C][64][90][00][03][11][P_]
The data in ASCII ends up as
'Abclo world
'
which should not be the case since the offset for the UpdateBinary command is 02 (beginning of the message, past the bytes designated for the NDEF message length).
Can you please shed some light on this issue?
Thanks again,
Jon
举报