我需要开发一个服务,它将主动地找到连接的新串行设备,并为该串行设备旋转一个新线程。
主要原因是我们有一台unix机器(有些是mac,另一些是linux,有些甚至是raspberryPi)。这台机器将有许多连接设备(外部HDD,Arduino(s)和电话等)。
该软件将查找所有串行端口,并找到连接的arduino,然后它将旋转一个线程来处理这个arduino。
我们的问题是:
只列出任何平台上的串行设备
- On mac is /dev/tty.(any name here)
- On linux is /dev/ttyUSB(#)
只探测到阿杜亚诺
- Some d
我需要处理两个自定义硬件,它们都通过两个串行连接发送调试数据。这些串行连接通过两个串行到USB转换器。串行到USB的设备具有相同的供应商编号、设备编号,显然还有相同的序列号。
问题是:我想分别记录这两个串行端口。自定义硬件需要不断地重新启动,并且它们是否连接到相同的/dev/ttyUSB*是完全随机的。我如何让他们每次都选择相同的设备路径?我可以让它依赖于它所插入的端口,但这似乎有点老生常谈。
因此,我对udevadm的输出进行了比较,如下所示:
$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB1` > usb1
$ ud
我有一个Windows服务,它从连接到我的PC的串行设备执行一些数据收集。此Windows服务通过命名管道托管WCF服务,然后可以在我的一个应用程序中使用该服务来查询串行数据。
问题是我有时想从服务向应用程序发送日志消息-例如,我想在每次通过串行连接接收到特定值时向应用程序发送日志消息。
命名管道上的WCF在从应用程序中提取服务信息方面工作得非常好,但我想要做的是时不时地将一些值从服务推送到应用程序。
有什么想法吗?
AK