我将用 C 语言编写一个程序,该程序将通过串行端口打开一个连接,并“监听”传入的命令,然后它将采取一些行动并报告状态。
连接将通过 RS232(串行端口)进行,我试图了解如何知道要打开哪个端口。
使用 Windows 时,如果我连接我的 USB 串行设备,我会在设备管理器中看到“Prolific USB-to-Serial Comm Port (COM4)”……但在 Linux 端,我看不到任何变化/sys/class/tty
or/dev
区域,我一直看穿ttyS0
现在ttyS7
(我假设S
根据我读过的内容代表串行)。
那么我怎么知道要连接哪一个呢?
编辑
当我在OpenSUSE 12.1 机器(3.1 内核)上开发它时,最终程序将在运行 2.4Linux 内核的板上的 uCLinux 上运行,所以我正在寻找适用于旧内核的纯 C 解决方案
仅供参考:本文答案中提到的文件/sys
系统直到 2.6 内核才存在,我的限制迫使我坚持使用 2.4 内核中可用的东西。