我们有一个完全工作的java程序,它可以连接到另一台计算机,并可以从这里发送消息(双方运行java,我们使用ObexPutClient和ObexServer),但是当尝试连接到NXT Brick并通过蓝牙,我们能够与砖配对,我们可以发送消息,但我们不知道NXT是否收到它。
当我们尝试在计算机上使用Java ObexPutClient时(我们将NXT的ServerURL提供给java程序)将消息发送到运行RobotC的NXT Brick,它确实无法正常工作。在java方面,给出了错误:
"连接失败; [10064]套接字操作失败,因为目标主机已关闭。" 是我们在Java上收到的错误。
使用robotc,砖正在等待发送消息,它正在等待3个整数来帮助机器人移动。
人们如何成功地做到了这一点,我们确保端口号是相同的。
答案 0 :(得分:0)
NXT不提供OBEX蓝牙服务。它使用串行端口配置文件(SPP - 有时也称为RFCOMM)。将NXT与主机配对时,它将在主机上创建一个串行端口(例如COM4)。在Java程序中,您需要打开此串行端口并以这种方式发送数据。
此外,leJOS具有PC Library(Java),其中包括通信和远程控制功能。您可以使用它,这样您就不必编写自己的。