当前位置: 首页 >应用方案 >技术应用 >

在QT环境下使用CH348芯片进行设备识别与管理

当多个CH348芯片同时接入电脑时,每块芯片虚拟出的8个串口都相同,这会导致难以区分和管理这些串口。为了解决这个问题,我们可以通过修改每个CH348芯片的Serial String字段,并在Qt上读取这个字段来唯一标识每个串口。

一、CH348背景知识

CH348芯片是一款常用的USB转串口芯片模块,USB转串口模块可以将USB信号转换为串行通信信号,使得计算机能够与各种串口设备进行通信。在某些应用场景中,我们需要在一台电脑上同时连接多个串口设备,这时就需要使用到CH348芯片的多串口功能。然而,当多个CH348芯片同时工作时,如何区分它们就成了一个问题。

二、CH348芯片应用问题描述

1、假设我们在一台电脑上连接了多个CH348芯片,每个芯片都虚拟出了8个串口。但是每8个串口描述字符串是相同的,这就导致了一个问题:当需要与特定的串口设备进行通信时,很难确定应该选择哪个串口。如果通过系统枚举出来的串口号来区分是哪个串口是不可靠的,因为系统枚举是随机的,在同一台电脑上换一个USB口后枚举的串口号也会改变。


1  CH348芯片识别与管理应用

2、在QT环境中,读取串口的Vendor ID与Product ID是失败的,也无法通过读取其他信息来获得唯一标识。


2  CH348芯片识别与管理应用

三、CH348芯片解决方案

为了解决这个问题,我们可以利用CH348芯片自带的上位机工具来修改其Serial String字段。这个字段是一个字符串,可以用来描述芯片的一些信息。我们可以在这个字段中写入一些唯一的标识符,比如设备的型号、序列号等。这样,当我们在Qt上位机程序中读取这个字段时,就可以根据这个标识符来确定是哪一块CH348芯片以及它所对应的虚拟串口。


四、实现方法

1.安装CH348的驱动

首先,我们需要找到并打开CH348芯片的上位机工具与驱动等。这些资料可以通过官方网站或者相关资源下载(CH348资料下载)打开资料下的USBMSER.exe软件,选择卡类型:USB转多串口(USB1.1/2.0),点击安装驱动,等待安装完成。

3  CH348芯片识别与管理应用


2.使用修改字段的上位机

找到并打开CH348芯片的上位机工具。选择资料链接下的CH34xSerCfg.ZIP

4  CH348芯片识别与管理应用

打开上位机工具后,我们会看到一个界面,其中列出了所有连接的CH348芯片及其对应的虚拟串口。

5  CH348芯片识别与管理应用

3. 修改Serial String字段

在上位机工具中,选择需要修改的CH348芯片,然后找到Serial String字段。我们将想要写入的信息(如设备的型号、序列号等)输入到这个字段中,勾选Serial String写入配置

6  CH348芯片识别与管理应用

5.在Qt读取Serial String字段

在Qt程序中,我们可以遍历所有的串口信息,调用QSerialPortInfo下的serialNumber()方法,并检查返回的结果是否我们之前设置的Serial String字段内容。如果找到了匹配的内容,我们就可以确定这个串口是由哪一块CH348芯片虚拟出来的。

7  CH348芯片识别与管理应用

五、CH348芯片应用总结

通过利用CH348芯片自带的上位机工具来修改Serial String字段,并在Qt程序中读取这个字段,我们可以方便地确定某一块CH348芯片及其对应的虚拟串口。这种方法不仅可以解决多芯片环境下的设备识别问题,还可以提高系统的可维护性和可扩展性。当然,这种方法也有一定的局限性,比如可能会增加一些额外的工作量和风险。因此,在实际应用中需要根据具体情况权衡利弊。



今天的分享就到这里啦,EBYTE每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多产品更多资料,感兴趣的小伙伴可以登录我们的亿佰特官网和企业公众号(微信号:cdebyte进行了解,也可以直接拨打400电话咨询技术专员!


相关阅读:

1、E810-R系列RS485集线器的快速应用教程
2、
浅析各类USB技术协议和新的USB4.0接口优缺点

3、云虚拟串口的使用方法

4、云虚拟串口工具远程采集的调试教程


亿佰特官网 4000-330-990

https://www.wjx.cn/jq/84863372.aspx