我正在尝试用Linux中的串行端口做一些简单的事情。具体做法是:
平台 - BeagleBone Black
OS - Angstrom Linux
单声道版本2.10.8.1(手臂)
该板实现了6个串口,如ttyO0到ttyO5而不是ttyS0。
它实际上有ttyS0到ttyS3。
当我枚举端口时,它会找到ttyS0等但不是ttyO0等。不幸的是,ttyO0等端口实际上有真正的串口。有没有办法让Mono能够使用它们?
谢谢!
菲尔
答案 0 :(得分:2)
自己想出来。
非常简单。它们专门扫描以/ dev / ttyS开头的端口名称:
public static string [] GetPortNames ()
{
int p = (int) Environment.OSVersion.Platform;
List<string> serial_ports = new List<string>();
// Are we on Unix?
if (p == 4 || p == 128 || p == 6) {
string[] ttys = Directory.GetFiles("/dev/", "tty*");
foreach (string dev in ttys) {
if (dev.StartsWith("/dev/ttyS") || dev.StartsWith("/dev/ttyUSB"))
serial_ports.Add(dev);