本质上,我们想要与符合串行 DB-9 型硬件接口(或 DB-25,因为我们有一条交叉电缆)的外部设备进行接口,而我们身边只有 Apple 笔记本电脑。
我对 Sun Microsystems 风格的计算机很熟悉,当时我们在实验室环境中工作,我们会做一些类似的事情
提示 /dev/term/a
或者类似的东西,将 Vt-100 风格的接口连接到我们的一个飞行计算机的串行接口... - 我上次实际发出这样的命令大约是在 15-20 年前。:-)
[为澄清起见添加:]
从用户的角度来看,他们会启动一个程序(可能是 iTerm)或类似旧的 SunOS 4.3 程序,然后他们会通过某个串行接口(UART,可能是由驱动程序模拟)进行通信,该接口插入外部设备上的 9 针连接器,通过一条简单的电线,可能有 3 或 4 条电线实际进行通信。
[为澄清起见添加:]
但是现在我们的教堂需要一些音响设备,而且我们是一家 Mac 商店,所以......
有什么想法吗?是否可以在更高版本的 OS-X 系统上获得适配器/驱动程序组合来发出(例如 USB-3)端口,然后通过 DB-9 连接器充当 Vt-100 终端?
我确信我会使用 STTY(1) 命令之类的东西来设置该设备上的终端流控制特性,从而通过适当的 USB-3/Thunderbolt 适配器/驱动程序通过 DB-9 抽象终端。但是,我希望作为 Mac,我不必过多考虑这些细节... :-D
您对 UNIX 专家有什么想法吗?
我们实际上更喜欢 DIY 的方式,然后在这个过程中学到一些东西。
我们的珍贵 USB 接口非常宝贵,因此利用未充分利用的端口(例如 Thunderbolt 或甚至 Firewire-400/800)对我们来说会更好。
有没有关于连接一条旧的串行电缆(从一大箱这种东西中取出),然后从已经从 Thunderbolt(我们笔记本电脑上使用最少的端口)中分出的 Firewire 中分出一个串行对(2 根还是 3 根线?)的指示?
我对烙铁、剪线钳和剥线钳相当熟练……:-) 因此,将 Firewire 拆分为串行接口的接线图,以及在 OS-X 中为这种野兽创建设备的一些指示,然后设置它的终端特性,真的对这次聊天很有帮助。:-) 这会显示出如何弥合从纯硬件到纯软件的差距,并真正引发更有趣的讨论,在我看来。
但是,一个现成的解决方案对我们来说也是可行的,但成本不会太高。我们正在制定一个由信仰资助的预算。
答案1
USB 转 RS232 适配器很便宜。
我们珍贵的 USB 接口非常珍贵
买一个集线器。它们也很便宜。
因此,利用未充分利用的端口(例如 Thunderbolt 或甚至 Firewire-400/800)对我们来说会更好。
如果您的系统有一个 Express Card 插槽,您可能会找到一个 Express Card RS-232 适配器。
大多数现代计算机接口的“链路层”预计由硬件控制器控制,而 USB、Firewire 和 Thunderbolt 的协议比 RS-232 更复杂。您不能将控制器放在一边,自己读取引脚的状态。许多旧计算机的 I/O 工作方式类似于 PC 并行端口 - 如果电流通过电线,则寄存器中的一位被下拉到 0,否则它会浮动到 1。现在不再如此 - 控制器执行链路层工作并通过 DMA 将数据发送到 CPU - 任何可用的寄存器都用于设置、设备枚举等。
事实就是如此不是就像将 DB-9 电缆的针脚焊接到 Firewire 或 Thunderbolt 针脚一样简单。
使用 RS-232 转 USB 适配器和集线器。Velcro 带非常适合将集线器或适配器固定在表面上。
答案2
您在 Google 上搜索的术语是“USB 转 RS232C”。有相当多的适配器可用。