我正在开展一个学校项目,将 pn532 与nfc手机连接起来。我正在使用seeedstudio nfc控制器和他们拥有的库,以及我正在添加的一些代码。我的问题与协议的连接和发现阶段有关。
问题1:当启动器将 CONNECT命令发送到DSAP = 1 “发现服务”时,响应的内容。贝娄我解释了协议的结果。
用于测试的电话是(gs4,注2):
情况1:
情况2:
在此之后,手机会发送NDEF数据,假设是。
现在我的问题是:
为什么电话有时会将CONNECT命令发送给SAP = 1,有时会发送给SAP = 4?
我必须对 05 20 06 做出什么命令?
答案 0 :(得分:2)
当向SAP 1发送CONNECT命令时,表示发件人想要在一个步骤中执行服务发现和连接设置。在这种情况下,CONNECT命令中的必需信息是服务名称。如果该服务存在且可连接,则响应将是到达SAP CONN的CC(连接完成)PDU,并且来自 命名服务绑定的SAP。如果不存在具有所请求名称的服务,则答案必须是具有适当原因代码的断开模式(DM)PDU。
遗憾的是,您没有提供有关SAP 1上收到的CONNECT命令的完整信息,至少缺少服务名称长度字节和名称本身。如上所述,CONNECT PDU只是无效,不应该被确认。
答案 1 :(得分:1)
正如预期的那样,整个问题都解决了。在请求连接不需要的服务之后,我向DM发送了原因02命令,一切正常。我花了一些时间让图书馆与所有手机一起工作,但最后我修复了它。感谢所有反馈