1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好!
我目前正在使用dynmaic NFC标签M24SR02-Y,我在与I2C通信时遇到问题。我得到了所有正确的答案但是当我尝试读取NDEF长度时出错了。如果有人可以帮助我解决这个问题,我会很感激,我现在已经编写了2天,似乎没有任何工作。 以下是我的回复命令: //发送'杀死RF并打开I2C 发送AC 52 //选择NFC-T4 AC 02 00 A4 04 00 07 D2 76 00 00 85 01 01 00 CRC CRC //回读M24SR的回答 写AD,READ 02 90 00 CRC CRC //选择CC AC 03 00 A4 00 0C 02 E1 03 CRC CRC //回读M24SR的回答 写AD读取03 90 00 CRC CRC //读取CC文件长度 AC 02 00 B0 00 00 02 CRC CRC //回读M24SR的回答 写AD读取02 00 0F 90 00 CRC CRC //读取CC文件 AC 03 00 B0 00 00 0F CRC CRC //回读M24SR的回答 写AD读取03 00 0F 20 00 F6 00 F6 04 06 00 01 01 00 00 00 90 00 CRC CRC //写NDEF长度 AC 03 00 D6 00 00 02 00 0E CRC CRC 写AD读取02 90 00 CRC CRC //取消选择命令 AC C2 CRC CRC //选择NDEF文件 AC 02 00 A4 00 0C 02 00 01 CRC CRC //回读M24SR的回答 写AD读取02 90 00 CRC CRC //读取NDEF消息长度 AC 03 00 B0 00 00 02 CRC CRC 写AD读取03 00 0f 90 00 44 45 提前致谢。 #i2c-isues#m24sr#nfc-tags#m24sr-i2c |
|
相关推荐
13个回答
|
|
你好Anish,
首先感谢您对M24SR02产品的关注! 然后,我可以看到两个解释不良行为的原因: 当您尝试擦除NDEF长度时: //删除NDEF消息长度 AC 02 00 A4 00 0C 02 00 01 CRC CRC - >实际上你重做了一个选择的ndef文件 请您用以下命令替换此命令:AC 02 00 D6 00 00 02 00 00 CRC CRC? 然后当你重写ndef长度时,你编程为00 0E但是你在前一个命令中写了0D数据。您可以尝试将ndef长度重写为00 0D吗? 希望这可以帮助, 最好的祝福, BB |
|
|
|
感谢您的答复!我在代码中写的擦除数据命令有D6这是一个错字错误。还能告诉我GPO引脚的确切设置,因为我刚刚添加了一个10k的上拉电阻。我必须为它发送一些特定的命令吗?
ThabTh |
|
|
|
你好Anish,
要对GPO进行编程,必须根据要观察的事件对系统文件的地址0x0004进行编程。 请参考以下链接中数据表的第2.7和3.1.4章: https://www.st.com/content/st_com/en/products/nfc/st25-nfc-rfid-tags-readers/st25-dynamic-nfc-tags/m24sr-series-dynamic-nfc-tags.html? querycriteria =的productId = SS1812 希望这可以帮助, 最好的祝福, BB |
|
|
|
我根本没有配置GPO引脚。这可能是我在发送readNdef length命令时得到的那些响应的原因吗?
|
|
|
|
嗨,阿尼什,
默认情况下,GPO配置为0x11(正在进行消息),因此问题不是来自此处。 你可以尝试在关闭Vcc之前删除取消选择命令吗? 而且,你能告诉我你用的是哪款手机吗?您使用什么应用程序来阅读标签的内容?你试试看的时候手机会收到什么样的信息? 最好的祝福, BB |
|
|
|
嗨Berenice,
非常感谢你帮助我。我在三星Galaxy S8上使用NFC工具应用程序。我获得有关标签的基本信息,如UID编号,标签信息,写入的字节数,数据等。 现在按照你提到的改变长度后,我得到读取NDEF长度为0x12的响应,同时读取NDEF数据给出了与读取CC文件内容相同的响应。我现在有点困惑。还有一件事应该是每个命令的第一个字节在0x02和0x03之间切换? |
|
|
|
我真的很抱歉打扰你,但请你看看我的档案并告诉我哪里出错了。除了读取NDEF文件的长度和数据外,我收到了所发送命令的所有正确响应。
命令的操作顺序如下: M24SROpenSession(); selectNDEFTagApplication(); selectSystemFile(); readSystemFileLength(); readSystemFileData(); verifyWritePassword(); setGPOFIeld(); selectSystemFile_1(); readSystemFileLength(); readSystemFileData(); selectNDEFTagApplication(); selectCCFile(); readCCFileLength(); readCCFile(); selectNDEFFile(); //写 // clearNDEFLength(); // testWrite(); // writeNDEFLength(); // deselectI2C(); //读 readNDEFLength(); readNDEFFileData(); // deselectI2C(); |
|
|
|
嗨,阿尼什,
你能告诉我你的手机上有哪个版本的Android应用程序吗? 并且关注,字节0x02和0x03,这是读取器和标签之间的同步位,它是标准的。标签应使用与刚收到的上一个命令相同的奇偶校验位进行应答。 所以如果从AC 02开始发送命令,标签也应该从02开始回答,否则答案将被忽略或者表示标签不理解命令。此外,读者应该交替使用02和03发送的命令。 希望这有助于调试, 最好的祝福, BB |
|
|
|
203253CGIL7
|
|
|
|
我从Playstore下载了一个新的应用程序,ST25 NFC tap,我从应用程序写了11个字节,标签在其他Android应用程序中也显示了11个字节..但是我无法读取它。知道可能导致这个问题的原因是什么吗?
谢谢 注意:原始帖子包含大量线程对话,只能迁移到第9级 |
|
|
|
谢谢你的回复!我会尝试一下让你知道。但我的项目描述最近发生了变化,我只需阅读数据。我无法读取NDEF长度和数据。从我使用的命令。对于NDEF长度和数据,我得到CC /系统文件长度和Cc /系统文件数据的响应。可能是什么问题?
谢谢 注意:原始帖子包含大量线程对话,只能迁移到第9级 |
|
|
|
谢谢大家帮我解决这个问题。我弄清楚为什么没有数据。该问题已得到解决,这是由于我在readNDEFData命令中插入的数据长度。此外,在选择NDEF文件之前,我们需要发送NDEFTagApllciation命令以成功读取NDEF文件长度。我将发布可能面临问题的工作命令。
再次特别感谢你 Brochier.Beatrice 和Lemonnier.Renaud â€OE中。 注意:原始帖子包含大量线程对话,只能迁移到第9级 |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2730 浏览 1 评论
3239 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1808 浏览 1 评论
3647 浏览 6 评论
6035 浏览 21 评论
1339浏览 4评论
198浏览 3评论
对H747I-DISCO写程序时将CN2的st-link复用为usart1,再次烧录时无法检测到stlink怎么解决?
350浏览 2评论
STM32G474RE芯片只是串口发个数据就发烫严重是怎么回事?
442浏览 2评论
STM32处理增量式编码器Z信号如何判断中断是正转的还是反向转的?
273浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 08:54 , Processed in 1.330459 second(s), Total 100, Slave 84 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号