问题 我在工作与它的那一刻一个比较尴尬的API 坚持在我身上给人一种设备的地址,通过USB接口相连,在形式COM *。但是,在我正在使用且必须使用的Ubuntu计算机上,如果我插入此设备,则会自动为它分配一个地址,格式为/ dev / ttyUSB *。
鉴于我无法修改API的源代码-我非常想这样做!-使API与所述设备进行通讯的最痛苦的方式是什么?
额外细节 手册中有关如何使用API的示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.caen.RFIDLibrary;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
CAENRFIDReader MyReader = new CAENRFIDReader();
MyReader.Connect(CAENRFIDPort.CAENRFID_RS232, "COM3");
CAENRFIDLogicalSource MySource = MyReader.GetSource("Source_0");
CAENRFIDTag[] MyTags = MySource.InventoryTag();
if (MyTags.Length > 0)
{
for (int i = 0; i < MyTags.Length; i++)
{
String s = BitConverter.ToString(MyTags[i].GetId());
Console.WriteLine(s);
}
}
Console.WriteLine("Press a key to end the program.");
Console.ReadKey();
MyReader.Disconnect();
}
}
}
这
``` 是我遇到问题的地方。
在手册的稍后部分,它指出该Connect方法具有两个参数:
ConType:用于连接的通信链接。
地址:取决于ConType参数:TCP / IP通信的IP地址(“ xxx.xxx.xxx.xxx”),RS232通信的COM端口(“ COMx”),USB通信的索引(尚不支持)。
奖金问题
有问题的API似乎是在可以在Windows计算机上运行的假设下编写的。(在C#中。)Windows体系结构似乎更喜欢COM *格式-我很高兴在这一点上得到纠正,而Ubuntu似乎更喜欢ttyUSB *格式。假设我可以将设备中的数据从ttyUSB *端口传送到COM *端口,那么API实际能够找到所说的数据吗?还是会错误地遵循默认的Windows路径?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。