使用 libraw1394 进行异步读/写

发布于 2024-08-31 04:20:07 字数 1311 浏览 7 评论 0原文

我正在尝试让两台计算机通过火线相互通信。两台计算机都运行 Ubuntu 9.10,并且都具有 /dev/raw1394 节点的读/写访问权限。我正在使用 firecontrol 来快速测试发送读/写请求。如果我能让它与 firecontrol 一起工作,我应该能够弄清楚如何在我的代码中做同样的事情。

在计算机 A 上,我这样做:

计算机A $ ./commander
现在工作
版权所有 (C) 2002-2007,Manfred Weihs
该软件绝对不提供任何保修。

未指定适配器!
成功获取句柄
当前代数(驱动程序):1
找到 1 张卡片
总线节点数:2,卡名:ohci1394
使用适配器 0
发现:总线上有 2 个节点,本地 ID 为 1,IRM 为 1
当前代数(适配器):7

进入命令模式
输入“帮助”以获取更多信息!
命令:w。 0 0 0xDE
操作参数不足!
命令:w。 0 0 2 0xDe
写入节点 0,总线 1023,偏移量 000000000000 2 个字节:
00 德
写入成功。
确认代码:完成

由于计算机 A 在节点 1 上,因此我发送到节点 0。然后我转到计算机 B 并从节点 0 读取并得到以下内容:

计算机B $ ./commander
版权所有 (C) 2002-2007,Manfred Weihs
该软件绝对不提供任何保修。

未指定适配器!
成功获取句柄
当前代数(驱动程序):1
找到 1 张卡片
总线节点数:2,卡名:ohci1394
使用适配器 0
发现:总线上有 2 个节点,本地 ID 为 0,IRM 为 1
当前代数(适配器):9

进入命令模式
输入“帮助”以获取更多信息!
命令: r 。 0 0 1
从节点 0、总线 1023 读取,偏移量 000000000000 1 个字节
读取失败。
确认码:待定;响应代码:地址错误

我对它们使用相同的偏移量。我做错了什么以及我应该如何从火线节点读取/写入火线节点?

当我尝试在自己的代码中使用 raw1394 时,我遇到了同样的问题。

I'm trying to get two computers to communicate with each other over firewire. Both of the computers are running Ubuntu 9.10 and both have read/write access to the /dev/raw1394 node. I'm using firecontrol to quickly test sending read/write requests. If I can get it to work with firecontrol, I should be able to figure out how to do the same in my code.

On computer A, I do this:

computerA $ ./commander
Work Now
Copyright (C) 2002-2007 by Manfred Weihs
This software comes with absolutely no warranty.

No adapter specified!
successfully got handle
current generation number (driver): 1
1 card(s) found
nodes on bus: 2, card name: ohci1394
using adapter 0
found: 2 nodes on bus, local ID is 1, IRM is 1
current generation number (adapter): 7

entering command mode
Type 'help' for more information!
Command: w . 0 0 0xDE
insufficient arguments for operation!
Command: w . 0 0 2 0xDe
writing to node 0, bus 1023, offset 000000000000 2 bytes:
00 DE
write succeeded.
Ack code: complete

Since computer A is on node 1, I send to node 0. Then I go to computer B and read from node 0 and get this:

computerB $ ./commander
Copyright (C) 2002-2007 by Manfred Weihs
This software comes with absolutely no warranty.

No adapter specified!
successfully got handle
current generation number (driver): 1
1 card(s) found
nodes on bus: 2, card name: ohci1394
using adapter 0
found: 2 nodes on bus, local ID is 0, IRM is 1
current generation number (adapter): 9

entering command mode
Type 'help' for more information!
Command: r . 0 0 1
reading from node 0, bus 1023, offset 000000000000 1 bytes
read failed.
Ack code: pending; Response code: address error

I'm using the same offset for both of them. What am I doing wrong and how am I supposed to read/write from/to firewire nodes?

I have these same problems when I try and use raw1394 in my own code.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文