当前位置: 首页 > 知识库问答 >
问题:

低层以太网驱动程序从phy层读取位

端木飞
2023-03-14

是否可以从标准计算机以太网接口直接从物理以太网连接接口读取位?

例如,假设我想使用笔记本电脑的以太网插孔作为差分逻辑探头(使用标准以太网电缆)。我可以写一个驱动程序来获取这些位吗?或者一个驱动程序能达到多低是有限制的?

本质上,物理层只是将比特流发送到设备驱动程序,还是进行任何会影响比特解释或导致设备故障的解码(例如使用不同的编码方案)。

我想它归结为,我们是否可以通过编写合适的驱动程序将以太网端口用作任何标准数字差分通信链路,或者我们是否仅限于IEEE规范(8b / 10b等)。

共有2个答案

谭越
2023-03-14

您可以使用libpcap/WinPcap来执行此操作。然而,你在选择你在网上写/读的内容方面并不是完全自由的。e、 g.序言和SFD必须仍然存在。这是非常基本的(因为抗噪声),典型的硬件不支持任何不同。

如果你想完全控制一切,去嵌入式硬件,找到一个使用PHY的板,可以给你的信息和处理器,能够处理数据速率。

郗缪文
2023-03-14

简短地回答,可能不会。

以下是一些原因:

在硬件链路层,计算机和以太网电缆之间实际上没有电气连接,它由小型变压器电气隔离,是电流而不是电压驱动信号,因此这将是第一个需要克服的问题,因为您必须通过两条线路发送相当精确的电流,而不是在一条线路上发送电压。以太网变压器

PHY硬件接口:下一步是,这根本不是由执行代码的CPU控制,而是由以太网PHY芯片接口控制,在那里,您没有(简单的)方式来闪烁和控制它。一些不同的PHY芯片允许您进行不同级别的访问,但我怀疑您是否会找到任何允许您直接控制传输接口的芯片,即使是这样,也必须将其实现到驱动程序中,这也是不太可能的。以太网PHY控制器

也许还有其他一些解决方案,如上面的评论,如果你想在计算机上直接进行IO控制,最好的解决方案是通过串行或并行端口,也许你可以找到以太网到串行或USB到串行端口,然后玩,但这将是数字信号。

另一件你可能想使用的东西是麦克风输入,因为它接受模拟信号,你可以直接控制它,但小心不要烧坏你的电脑。(我见过一些银行卡磁条在手机上使用)。

 类似资料:
  • 我无法从以下网页中读取电子邮件id: 网址:https://targetstudy.com/university/2/acharya-ng-ranga-agricultural-university/ 这是我的代码

  • 我在用蟒蛇2。7带有。现在在我的webautomation脚本中,我将打开链接或URL并进入主页。现在我需要点击一些锚定标签来浏览其他页面。我一直到现在。现在,当我要进入一个新页面时,我需要从浏览器中获取新的,因为我需要将其传递给,以便进行网页抓取。所以现在我关心的是如何以动态的方式获得这样的URL? 如果有,请咨询!

  • 我正在使用Chrome Webdriver执行Salesforce页面流的脚本。这些流用Selenium JUnit代码编写,在JMeter 5.4.1中作为JAR (JUnit请求采样器)导出和执行。该页面有一个带有文本框的弹出窗口。它应该从一个CSV文件(当前保存在Selenium项目中)中逐个读取所有值[例如,value1,value2...值n] (1列,“n”行),直到所有值都结束。输入

  • 当我完成自动化后,Chrome Web驱动程序仍在后台运行,是否可以自动关闭它,而无需通过任务管理器执行?

  • 使用此代码: 连接是池连接吗?我使用的是基本的java DriverManager,但在Mark的世界中,它得到的是一个雪花驱动程序,它将连接池化。所以 正在获取池连接。对吧?

  • 问题内容: 我正在做一项作业,其中需要将我创建的两个程序合并为一个可以运行的程序。我希望得到的最终结果是一个程序,一旦启动,打开登录窗口,然后登录,用户即可玩井字游戏。基本上,我只是想知道如何创建一个窗口,当您单击按钮时,会打开一个可以运行大量代码的新窗口。 问题答案: 如果您使用的是框架,请创建一秒钟并将其可见性设置为false,然后单击按钮时将其设置为。