我可以将任何主板上的软盘驱动器引脚用作 GPIO 引脚吗?

我可以将任何主板上的软盘驱动器引脚用作 GPIO 引脚吗?

最近看了raspberry-pi的一些功能,最吸引我的是它的GPIO(通用输入输出)引脚。然后我想到我有一块旧主板,上面有软盘驱动器引脚,然后我插上它,启动并安装了ubuntu。成功了!

现在我的问题是:

  1. 我可以将软盘驱动器引脚用作 GPIO 引脚吗?
  2. 如果没有,那么请告诉我哪些引脚可以用作 GPIO 或者没有任何安排?

答案1

一般来说,软盘的连接不能用作 GPIO 引脚。如果你有驱动软盘的芯片的确切规格,那么有时你可能能够用它做一些事情,但这绝非易事,也不能保证一定能成功。所以答案可能是否定的。

我们无法知道您的主板是否有 GPIO 引脚。有些技嘉主板似乎有。另外,如果您的主板太旧,以至于有并行打印机端口,那将是一个不错的选择。

如果您想直接控制它,最好的选择似乎是使用 GPIO-USB 适配器。它们的价格约为 15 欧元或等值当地货币。另一个选择是看看 Arduino。当然,以这个价格也可以买到 Pi zero W。

答案2

旧主板...安装了 ubuntu

如果 Ubuntu 开箱即用,则软盘控制器可能相当“现代”。最近的 Ubuntu 在非常旧的 PC 上运行得不是很好。

我可以将软盘驱动器引脚用作 GPIO 引脚吗?

你可以使用一些。看看软盘连接器,将其与数据表进行比较,您会发现唯一可以轻松使用的只有Motor A EnableMotor B EnableDrive Select作为输出引脚。

您甚至可能无法使用它们全部;我的一块较旧的主板上的超级 I/O 芯片仅支持单个驱动器(因此仅支持单个电机信号)。

其余部分由复杂的状态机(软盘控制器)控制。通过向控制器发送正确的命令,您可以诱使控制器使用其他一些引脚,但这需要对软盘信号的运行情况有充分的了解。

因此,首先,您需要找出主板上的确切软盘控制器(或超级 I/O 芯片),然后使用 Google 查找手册或数据表。

其次,Linux 不是实时操作系统,因此在时间至关重要的情况下驱动引脚很困难。

第三,现代 Linux 使得“仅将值传递给设备”变得越来越痛苦;您可能必须编写一个简单的内核驱动程序。

如果您的旧主板也有串行或并行端口:将它们用作 GPIO 会更容易。

而且,正如另一个答案所写,最简单的方法是花几欧元买一个 GPIO USB 设备——这样你就不必摆弄所有东西了(但当然,摆弄也有其吸引力)。

相关内容