我们公司运行的一款旧软件可以管理 RFID 卡的进出以打开门。
我们想要创建一个应用程序来识别谁刚刚接触了特定的地方(我们有那个 id)并获取他们的第一个名字,在屏幕上说“Hi [NAME]”。
正如我所提到的,该软件已经很老了,而且没有 API。它通过串行端口 (COM1) 与 RFID 硬件通信。
我想知道获取所需数据的最佳方法是否是以某种方式拦截 COM1 流量并提取/查找我想要的数据。
这听起来像是最好的方法吗?它会起作用,还是不可能从正在传输的数据中获取名称和数字?
干杯,安德烈
我们公司运行的一款旧软件可以管理 RFID 卡的进出以打开门。
我们想要创建一个应用程序来识别谁刚刚接触了特定的地方(我们有那个 id)并获取他们的第一个名字,在屏幕上说“Hi [NAME]”。
正如我所提到的,该软件已经很老了,而且没有 API。它通过串行端口 (COM1) 与 RFID 硬件通信。
我想知道获取所需数据的最佳方法是否是以某种方式拦截 COM1 流量并提取/查找我想要的数据。
这听起来像是最好的方法吗?它会起作用,还是不可能从正在传输的数据中获取名称和数字?
干杯,安德烈
您能否将软件配置为使用 COM1 以外的端口,或者配置硬件使其物理串行端口分配给不同的 COM 端口?
如果是这样,请查看com0com。它是一个 Windows 驱动程序,可在您的 PC 上创建两个 COM 端口,它们之间有一个虚拟 NULL 调制解调器。一侧输入的数据从另一侧输出。
以下是您将如何进行设置:
您需要编写一个程序来在 COMx 和 COMy 之间传递数据,同时监视它以获取您正在寻找的信息。让它简单而健壮,因为如果它出现故障,您的读者将停止工作。
如果您只需要监视通信的一侧,请创建一条电缆,将 COM1 的 GND 和 RX 引脚连接到另一个 COM 端口。现在您的程序可以监控对话的那一侧,而不会干扰旧版软件。
好吧,一般来说,您可以查看 RS232 信号,如果您想这样做的话。这很棘手,因为您需要“嗅探”信号,这意味着购买或制造允许原始信号通过的装备,然后为您提供一种连接它们的方法。而且,您需要将发送和接收信号发送到两个串行端口(在 RX 线上)。然后你可能想要一些“嗅探”软件,让你可以按时间顺序查看你得到的东西(理想情况下,带有时间戳)。一些可爱的协议也将使用调制解调器线路,因此您可能还需要监视它们。
或者,尝试搜索“免费串行端口监视器”或“串行嗅探器”。
祝你好运!