CN113949745A - 可配置多路接口的串口/can转以太网服务器及其实现方法 - Google Patents
可配置多路接口的串口/can转以太网服务器及其实现方法 Download PDFInfo
- Publication number
- CN113949745A CN113949745A CN202111033269.6A CN202111033269A CN113949745A CN 113949745 A CN113949745 A CN 113949745A CN 202111033269 A CN202111033269 A CN 202111033269A CN 113949745 A CN113949745 A CN 113949745A
- Authority
- CN
- China
- Prior art keywords
- interface
- pin
- serial port
- chip
- usb
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 13
- 238000004891 communication Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims description 24
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 235000015429 Mirabilis expansa Nutrition 0.000 claims description 12
- 244000294411 Mirabilis expansa Species 0.000 claims description 12
- 235000013536 miso Nutrition 0.000 claims description 12
- 101100191136 Arabidopsis thaliana PCMP-A2 gene Proteins 0.000 claims description 6
- 101100422768 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SUL2 gene Proteins 0.000 claims description 6
- 101100048260 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) UBX2 gene Proteins 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000004075 alteration Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供一种可配置多路接口的串口/CAN转以太网服务器及其实现方法,采用多接口模块方案,将串口和CAN接口分布于多个独立的接口模块上,一台主控单元通过USB接口和其他负责串口和CAN通讯业务的接口模块进行通讯;通过这种措施,串口或CAN接口的中断信号由多个独立的接口模块承担,主控单元负责“网络中断”和少量的USB中断,从而解决单个主控单元由于过多的“网络中断”+“接口中断”无法实现多个接口的接口服务器的难题,降低多口接口服务器的实现难度和成本;每一个接口模块可扩展串口或CAN接口,可适用于更多的工业应用场合。
Description
技术领域
本发明涉及通信领域,更具体地,涉及一种可配置多路接口的串口/CAN转以太网服务器及其实现方法。
背景技术
目前工业现场仍然存在很多利用RS485/422/232,CAN等工业总线实现工业自动化数据采集和控制的工业自动化应用;由于此类工业总线通常通信距离比较有限,无法满足当前工业4.0的需求;所以很多厂家推出了RS485/422/232转Ethernet的串口服务器,以及CAN转Ethernet的CAN服务器来利用无处不在的以太网技术,扩展工业现场总线的通信距离。
1)比较常见的串口服务器是1/2/4/8/16/32口串口服务器;最多也是32口串口服务器;当现场需要超过32口服务器时,将面临无设备可用的场景。
2)CAN服务器的接口数量一般为1到4个CAN接口,8个CAN接口甚至32个CAN接口的服务器是非常少的。
3)一般串口服务器和CAN服务器是两种独立的产品类型,在某些既需要串口,也需要CAN接口的服务器的场合就需要安装两个以上的设备才能满足需求。目前还没有一款将多路串口和CAN接口集成在一个设备上,并且可以根据工业现场需要直接配置为串口或CAN服务器的产品。
4)在单个CPU上通过总线扩展多路串口设备或CAN接口时,由于CPU外设的硬件中断和软中断过多,导致CPU负载过重,从而使整机的性能下降,无法满足多路串口或CAN服务器高波特率数据传输需求。如果使用高性能CPU,将导致产品成本直线上升,并且不能有效降低外设中断过多对CPU性能的负面影响。
发明内容
本发明针对现有技术中存在的技术问题,提供一种可配置多路接口的串口/CAN转以太网服务器及其实现方法,能够对串口和CAN接口进行扩展,适用于更多的工业应用场合。
根据本发明的第一方面,提供了一种可配置多路接口的串口/CAN转以太网服务器,包括主控单元和多个接口模块,所述主控单元集成有USB主机设备,每一个所述接口模块集成有USB从机设备,每一个USB从机设备通过USB集线器与所述USB主机设备通信连接,所述USB主机设备、USB集线器和USB从机设备组成USB接口,每一个所述接口模块自带多路接口,每一路接口为串口或CAN接口,每一个所述接口模块通过自带接口与外界接口设备进行数据通信。
在上述技术方案的基础上,本发明还可以作出如下改进。
可选的,所述接口模块为NXP LPC55XX芯片,所述NXP LPC55XX芯片自带8路Flexcomm接口,由所述Flexcomm接口扩展串口或CAN接口。
可选的,每一个所述Flexcomm接口包括FC_TXD_MOSI、FC_RXD_MISO、FC_SCK、FC_SSEL四个功能引脚,每一个NXP LPC55XX芯片包括一个GPIO引脚,8路Flexcomm接口共用所述GPIO引脚;当Flexcomm接口工作在UART模式时,只使用FC_TXD_MOSI、FC_RXD_MISO两个引脚,分别作为串口的TXD端口和RXD端口;当Flexcomm接口工作在SPI模式时,Flexcomm接口的四个引脚全部使用,分别作为CAN接口的MOSI、MISO、SCK和SSEL端口。
可选的,由所述Flexcomm接口扩展串口或CAN接口,包括:
所述Flexcomm接口的FC_TXD_MOSI、FC_RXD_MISO、FC_SCK、FC_SSEL四个功能引脚分别连接到第一单刀双掷开关芯片TMUX1134的D1、D2、D3和D4引脚,所述NXP LPC55XX芯片的GPIO引脚连接所述第一单刀双掷开关芯片TMUX1134的选通控制引脚SEL1、SEL2、SEL3和SEL4;所述第一单刀双掷开关芯片TMUX1134的S1A引脚连接串口转换芯片的TXD端口,S2A引脚连接串口转换芯片的RXD引脚,S3A引脚和S4A引脚闲置不用,所述第一单刀双掷开关芯片TMUX1134的S1B、S2B、S3B和S4B四个引脚分别连接SPI转CAN控制器芯片的SI引脚、SO引脚、CLK引脚和CS引脚。
所述串口转换芯片的TX/A引脚和RX/B引脚分别连接第二单刀双掷开关芯片TMUX1134的S1A引脚和S2A引脚,所述SPI转CAN控制器芯片的CAN_TXD引脚和CAN_RXD引脚连接CAN收发器TJA1051芯片,所述CAN收发器TJA1051芯片的CAN_H引脚和CAN_L引脚分别连接第二单刀双掷开关芯片TMUX1134的S1B引脚和S2B引脚,第二单刀双掷开关芯片的D1引脚和D2引脚与对外接口相连,所述第二单刀双掷开关芯片TMUX1134的选通控制引脚SEL1、SEL2、SEL3和SEL4均与所述NXP LPC55XX芯片的GPIO引脚连接。
可选的,当串口/CAN服务器的指定对外接口被配置为串口功能时,相应的NXPLPC55XX芯片将GPIO引脚置为高电平,第一单刀双掷开关芯片TMUX1134和第二单刀双掷开关芯片TMUX1134的D1、D2、D3和D4以及S1A、S2A、S3A和S4A分别导通,并将对应的Flexcomm接口配置为UART模式,配合串口转换芯片对串口进行扩展;
当串口/CAN服务器的指定对外接口被配置为CAN功能时,相应的NXP LPC55XX芯片将GPIO引脚置为低电平,第一单刀双掷开关芯片TMUX1134和第二单刀双掷开关芯片TMUX1134的D1、D2、D3和D4以及S1B、S2B、S3B和S4B分别导通,并将对应的Flexcomm接口配置为SPI模式,配合SPI转CAN控制器芯片和CAN收发器TJA1051芯片,对CAN接口进行扩展。
可选的,每一个所述NXP LPC55XX芯片包括MCU单元、电阻R1、电阻R2、电阻R3和电阻R4;
所述电阻R1和电阻R2串联连接在VCC和地线之间,所述电阻R3和所述电阻R4串联连接在VCC和地线之间,所述MCU单元的引脚Gpio1连接在电阻R1和电阻R2之间,所述MCU单元的引脚Gpio2连接在电阻R3和电阻R4之间;
通过MCU单元的引脚Gpio1和引脚Gpio2的不同电平确定本NXP LPC55XX芯片在所有接口模块中的序列号。
可选的,接口模块启动后,等待主控单元下发配置命令,如果主控单元下发的参数配置接口为串口,则将接口模块中对应的Flexcomm接口配置为串口模式,并加载串口转换芯片的驱动;
如果主控单元下发的参数配置接口为CAN接口,则将接口模块中对应的Flexcomm接口配置为SPI模式,并加载SPI转CAN控制器芯片和CAN收发器TJA1051芯片的驱动。
可选的,所述主控单元中还包括网络接口,所述串口/CAN转以太网服务器通过网络接口与用户网络终端通信连接,所述串口/CAN转以太网服务器通过每一个接口模块自带的Flexcomm接口与用户接口设备通信连接;
用户网络终端基于TCP/IP协议,通过所述主控单元的网络接口向所述串口/CAN转以太网服务器发送数据,所述串口/CAN转以太网服务器将接收到的数据按照内部通讯协议组装数据包发送到对应的接口模块,所述接口模块对数据包进行解析,将解析后的数据通过自带的Flexcomm接口发送至用户接口设备;
用户接口设备的数据发送到对应的接口模块,所述接口模块将接收到的数据按照内部通讯协议组装数据包,将数据包通过USB接口发送给主控单元,所述主控单元对接收到的数据包进行解析,并将解析后的数据转发至对应的网络接口上,通过网络接口将数据发送给用户网络终端,其中,所述网络接口通过每一个接口模块的序列号,与每一个接口模块建立对应关系。
可选的,所述主控单元包括调试接口子模块、Web配置管理子模块、网络协议处理子模块、接口管理子模块、数据处理子模块、接口LED管理子模块和固件升级处理子模块;
所述调试接口子模块,通过电路与每一个接口模块的调试接口连接,通过切换开关控制与每一个所述接口模块信号的连通,用于对每一个所述接口模块进行调试;以及对主控单元自身进行调试;
所述Web配置管理子模块,用于对外提供web服务,通过web服务完成设备网络配置、接口功能配置以及固件升级功能;
所述网络协议处理子模块,用于对外提供不同的网络协议,所述不同的网络协议包括TCP Server、TCP Client、UDP、UDP组播、Modbus TCP网络协议;
所述接口模块管理子模块,用于负责主控单元和各接口模块之间的参数配置管理、心跳监测、逻辑接口与实际物理接口之间映射规则建立;
所述数据处理子模块,用于处理与各接口模块之间的USB数据通信,同时负责根据内部协议添加或者删除协议信息;
所述接口LED管理子模块,用于管理控制每一个接口模块的每路接口的接收和发送LED,在有数据传输的时候进行闪烁指示;
所述固件升级处理子模块,用于负责主控单元的固件升级和每个接口模块的固件升级。
根据本发明的第二方面,提供一种串口/CAN转以太网服务器的实现方法,包括:
配置一个主控单元和多个接口模块,所述主控单元集成有USB主机设备,每一个所述接口模块集成有USB从机设备;
通过USB集线器连接所述USB主机设备和每一个USB从机设备,以实现所述主控单元和每一个所述接口模块之间的通信连接,每一个所述接口模块自带多路接口,每一个所述接口模块通过自带接口与外界接口设备进行数据通信;
其中,所述接口为串口或CAN接口,所述USB主机设备、USB集线器和USB从机设备组成USB接口。
本发明提供的一种可配置多借口的串口/CAN转以太网服务器,采用多接口模块方案,将串口和CAN接口分布于多个独立的接口模块上,一台主控单元通过USB接口和其他负责串口和CAN通讯业务的接口模块进行通讯;通过这种措施,串口或CAN接口的中断信号由多个独立的接口模块承担,主控单元负责“网络中断”和少量的USB中断,从而解决单个主控单元由于过多的“网络中断”+“接口中断”无法实现多个接口的接口服务器的难题,降低多口接口服务器的实现难度和成本;每一个接口模块可扩展串口或CAN接口,可适用于更多的工业应用场合。
附图说明
图1为本发明提供的一种可配置多路接口的串口/CAN转以太网服务器的结构示意图;
图2为串口/CAN转以太网服务器的结构示意图;
图3为每一个接口模块扩展串口或CAN接口的结构示意图;
图4为每一个接口模块的引脚连接关系示意图;
图5为USB接口和接口模块之间的数据传输流程图;
图6为用户网络终端、串口/CAN转以太网服务器和用户接口设备之间的连接结构示意图;
图7为接口模块的内部结构示意图;
图8为本发明提供的一种串口/CAN转以太网服务器的实现方法流程图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1为本发明提供的一种可配置多路接口的串口/CAN转以太网服务器的结构示意图,如图1所示,该串口/CAN转以太网服务器主要包括主控单元和多个接口模块,主控单元集成有USB主机设备,每一个所述接口模块集成有USB从机设备,每一个USB从机设备通过USB集线器与所述USB主机设备通信连接,所述USB主机设备、USB集线器和USB从机设备组成USB接口,每一个接口模块自带多路接口,每一路接口为串口或CAN接口,每一个所述接口模块通过自带接口与外界接口设备进行数据通信。
可以理解的是,基于背景技术中的缺陷,本发明实施例提出了一种能够通过一个主控单元实现多个接口的服务器,且每一个接口可为串口或CAN接口,该服务器称为串口/CAN转以太网服务器。具体的,该串口/CAN转以太网服务器主要包括一个主控单元和多个接口模块,主控单元中集成USB主机设备,每一个接口模块中集成USB从机设备,USB主机设备和每一个USB从机设备通过USB集线器连接,USB主机设备、USB从机设备和USB集线器共同构成USB接口,也就是主控单元和每一个接口模块通过USB接口通信连接。每一个接口模块自带多路接口,实现一个主控单元控制多个接口模块,进而实现控制很多路接口的目的,另外,每一个接口模块自带的每一路接口可扩展为串口或CAN接口,在同一个设备服务器中可同时适配串口和CAN接口,可适用于不同的工业应用场景。
本发明采用多接口模块方案,将串口和CAN接口分布于多个独立的接口模块上,一台主控单元通过USB接口和其他负责串口和CAN通讯业务的接口模块进行通讯;通过这种措施,串口或CAN接口的中断信号由多个独立的接口模块承担,主控单元负责“网络中断”和少量的USB中断,从而解决单个主控单元由于过多的“网络中断”+“接口中断”无法实现多个接口的接口服务器的难题,降低多口接口服务器的实现难度和成本;每一个接口模块可扩展串口或CAN接口,可适用于更多的工业应用场合。
在一种可能的实施例方式中,接口模块为NXP LPC55XX芯片,所述NXP LPC55XX芯片自带8路Flexcomm接口,由所述Flexcomm接口扩展串口或CAN接口。
可以理解的是,可参见图2,本发明实施例采用IPQ6018 CPU作为USB Host(USB主机设备),NXP LPC55xx芯片内置USB接口,为USB从机设备。每片LPC55xx自带8个Flexcomm接口,由Flexcomm扩展串口或CAN接口。四片LPC55xx通过USB HUB接入到主控CPU的USB Host即可组成32个串口或CAN接口。每片LPC55xx在linux系统下作为一个USB CDCACM类设备,由这一个USB CDCACM类设备管理8路串口或者CAN。
在一种可能的实施例方式中,NXP LPC55xx芯片自带的每一个Flexcomm接口包括FC_TXD_MOSI、FC_RXD_MISO、FC_SCK、FC_SSEL四个功能引脚,每一个NXP LPC55XX芯片包括一个GPIO引脚,8路Flexcomm接口共用所述GPIO引脚。当Flexcomm接口工作在UART模式时,只使用FC_TXD_MOSI、FC_RXD_MISO两个引脚,分别作为串口的TXD端口和RXD端口,用来扩展串口;当Flexcomm接口工作在SPI模式时,Flexcomm接口的四个引脚全部使用,分别作为CAN接口的MOSI、MISO、SCK和SSEL端口,用来扩展CAN接口。
在一种可能的实施例方式中,由Flexcomm接口扩展串口或CAN接口,包括:Flexcomm接口的FC_TXD_MOSI、FC_RXD_MISO、FC_SCK、FC_SSEL四个功能引脚分别连接到第一单刀双掷开关芯片TMUX1134的D1、D2、D3和D4引脚,所述NXP LPC55XX芯片的GPIO引脚连接所述第一单刀双掷开关芯片TMUX1134的选通控制引脚SEL1、SEL2、SEL3和SEL4;所述第一单刀双掷开关芯片TMUX1134的S1A引脚连接串口转换芯片的TXD端口,S2A引脚连接串口转换芯片的RXD引脚,S3A引脚和S4A引脚闲置不用,所述第一单刀双掷开关芯片TMUX1134的S1B、S2B、S3B和S4B四个引脚分别连接SPI转CAN控制器芯片的SI引脚、SO引脚、CLK引脚和CS引脚。
串口转换芯片的TX/A引脚和RX/B引脚分别连接第二单刀双掷开关芯片TMUX1134的S1A引脚和S2A引脚,所述SPI转CAN控制器芯片的CAN_TXD引脚和CAN_RXD引脚连接CAN收发器TJA1051芯片,所述CAN收发器TJA1051芯片的CAN_H引脚和CAN_L引脚分别连接第二单刀双掷开关芯片TMUX1134的S1B引脚和S2B引脚,第二单刀双掷开关芯片的D1引脚和D2引脚与对外接口相连,所述第二单刀双掷开关芯片TMUX1134的选通控制引脚SEL1、SEL2、SEL3和SEL4均与所述NXP LPC55XX芯片的GPIO引脚连接。
可以理解的是,参见图3,在基于NXP LPC55xx芯片自带的每一个Flexcomm接口扩展串口或CAN接口时,除了NXP LPC55xx芯片之外,还主要包括两片单刀双掷开关芯片TMUX1134,以及串口转换芯片和SPI转CNA控制芯片、CAN收发器。
其中,Flexcomm接口与第一单刀双掷开关芯片TMUX1134的连接关系为,LPC55XX的Flexcomm接口的4个引脚连接到第一单刀双掷开关芯片TMUX1134的D1~D4引脚,一个单独的GPIO(S1)与第一单刀双掷开关芯片TMUX1134芯片的选通控制引脚SEL1~SEL4全部连接在一起。当S1为高电平时,第一单刀双掷开关芯片TMUX1134的D1~D4与S1A~S4A分别导通;当GPIO为低电平时,第一单刀双掷开关芯片TMUX1134的D1~D4与S1B~S4B分别导通。
第一单刀双掷开关芯片TMUX1134的S1A和S2A作为串口功能引脚与串口转换芯片(SP3243或MAX13487)相连接,S3A和S4A两个引脚闲置不用。第一单刀双掷开关芯片TMUX1134的S1B~S4B四个引脚连接SPI转CAN控制器芯片MCP2515。
其中,第二单刀双掷开关芯片TMUX1134与串口/CAN外围电路的连接关系为,第二单刀双掷开关芯片TMUX1134的D1和D2与串口/CAN转以太网服务器的对外接口相连,S1A和S2A连接到串口转换芯片(SP3243或MAX13487)上,S1B和S2B连接到CAN收发器TJA1051芯片上,选通控制引脚SEL1~SEL4全部与LPC55XX的GPIO(S1)连接。
在一种可能的实施例方式中,当串口/CAN服务器的指定对外接口被配置为串口功能时,相应的NXP LPC55XX芯片将GPIO引脚置为高电平,第一单刀双掷开关芯片TMUX1134和第二单刀双掷开关芯片TMUX1134的D1、D2、D3和D4以及S1A、S2A、S3A和S4A分别导通,并将对应的Flexcomm接口配置为UART模式,配合串口转换芯片对串口进行扩展;当串口/CAN服务器的指定对外接口被配置为CAN功能时,相应的NXP LPC55XX芯片将GPIO引脚置为低电平,第一单刀双掷开关芯片TMUX1134和第二单刀双掷开关芯片TMUX1134的D1、D2、D3和D4以及S1B、S2B、S3B和S4B分别导通,并将对应的Flexcomm接口配置为SPI模式,配合SPI转CAN控制器芯片和CAN收发器TJA1051芯片,对CAN接口进行扩展。
可以理解的是,每一个接口模块中的每一个Flexcomm接口的电路连接关系可参见图3,其实现串口或CAN接口的方式为,LPC55XX芯片的每个Flexcomm接口都使用类似的外围硬件电路布局,当用户将串口/CAN转以太网服务器的某一路对外接口配置为串口功能时,LPC55XX将单刀双掷开关芯片TMUX1134的选通引脚置为高电平,同步控制两片单刀双掷开关芯片TMUX1134的导通逻辑,并将Flexcomm接口配置为UART模式,配合SP3243或MAX13487等串口转换芯片,该对外接口就可以进行串口数据通讯。
当用户将串口/CAN转以太网服务器的某一路对外接口配置为CAN功能时,LPC55XX将单刀双掷开关芯片TMUX1134的选通引脚置为低电平,同步控制两片单刀双掷开关芯片TMUX1134的导通逻辑,并将Flexcomm接口配置为SPI模式,配合SPI转CAN控制芯片MCP2515和CAN收发器JTA1051组成的硬件电路,该对外接口就可以进行CAN数据通讯。
在一种可能的实施例方式中,参见图4,每一个NXP LPC55XX芯片包括MCU单元、电阻R1、电阻R2、电阻R3和电阻R4。电阻R1和电阻R2串联连接在VCC和地线之间,电阻R3和所述电阻R4串联连接在VCC和地线之间,MCU单元的引脚Gpio1连接在电阻R1和电阻R2之间,MCU单元的引脚Gpio2连接在电阻R3和电阻R4之间。通过MCU单元的引脚Gpio1和引脚Gpio2的不同电平确定本NXP LPC55XX芯片在所有接口模块中的序列号。
可以理解的是,串口/CAN转以太网服务器的每片NXP LPC55xx芯片使用两个GPIO作为输入引脚,根据其在电路板上的次序,选择性的焊接R1~R4电阻,设备启动时根据外置上/下拉电阻产生的不同的电平来确定本接口模块的在整机系统中的次序,并根据该次序在USB枚举加载驱动阶段作为本从机设备的序列号上报给Linux系统。
其中,在Linux系统的udev脚本中编写相应规则,根据USB从机设备(接口模块)的VID(VendorID)、PID(Product ID)和设备序列号来建立绑定设备节点,在Linux系统的设备目录下面产生与实际的硬件接口具有确定性顺序的设备节点。无论这些USB从机设备的上电先后顺序如何,或是某个USB从机设备重启,都不会出现USB设备节点与实际硬件接口无法准确对应的问题。
其中,参见图5,MCU(接口模块)启动后分别初始化USB从机设备协议栈,等待USB主机枚举加载驱动。待USB枚举过程结束后,MCU等待主机下发配置命令,如果主机下发的参数配置某个接口为串口,则将该接口对应的Flexcomm配置为串口模式,并加载串口转换芯片驱动;如果主机下发的参数配置某个接口为CAN接口,则将该接口对应的Flexcomm为SPI模式,加载SPA转CAN控制芯片的驱动。MCU将分别等待USB接口和Flexcomm接口的接收中断。如果USB接口接收到主机设备发来的数据报文,根据内部通讯协议将数据发送到指定的Flexcomm接口。如果某个Flexcomm接口收到数据,则按照内部通讯协议将数据组包,并附带上该Flexcomm接口的序号信息,发送到USB接口,即传送到USB主机设备。
在一种可能的实施例方式中,参见图6,主控单元中还包括网络接口,所述串口/CAN转以太网服务器通过网络接口与用户网络终端通信连接,所述串口/CAN转以太网服务器通过每一个接口模块自带的Flexcomm接口与用户接口设备通信连接。
其中,用户网络终端基于TCP/IP协议,通过所述主控单元的网络接口向所述串口/CAN转以太网服务器发送数据,所述串口/CAN转以太网服务器将接收到的数据按照内部通讯协议组装数据包发送到对应的接口模块,所述接口模块对数据包进行解析,将解析后的数据通过自带的Flexcomm接口发送至用户接口设备。用户接口设备的数据发送到对应的接口模块,所述接口模块将接收到的数据按照内部通讯协议组装数据包,将数据包通过USB接口发送给主控单元,所述主控单元对接收到的数据包进行解析,并将解析后的数据转发至对应的网络接口上,通过网络接口将数据发送给用户网络终端,其中,网络接口通过每一个接口模块的序列号,与每一个接口模块建立对应关系。
可以理解的是,用户通过此串口/CAN转以太网服务器的WEB页面,将某个接口配置为串口功能或者CAN功能,然后在用户网络终端通过TCP/IP协议向串口/CAN转以太网服务器发送数据,串口/CAN转以太网服务器将网络接收到的数据按照内部通讯协议组包发送到指定的USB从机,USB从机再将数据解析后发送到指定的串口或者CAN接口,最终数据发送到用户接口设备上。用户接口设备的数据发送到串口/CAN转以太网服务器,USB从机将数据按照内部通讯协议组包,通过USB接口发送到主控CPU的USB主机设备,主控CPU将收到的USB数据报文解析,然后转发到指定的网路接口上,即可到达用户网络终端。
按照上述设计方案,通常需要主控CPU来处理的串口/CAN中断被USB从机的MCU接管,使其专注于处理网络协议和USB传输。而主控CPU的网络和USB接口通常是具有DMA加速单元,可以进行高速数据传输处理,这样就会大大降低主控CPU的负荷。在串口/CAN接口在高波特率、长时间、大量数据收发的场景下,该方案的串口/CAN转以太网服务器具有优良的性能表现。
在一种可能的实施例方式中,参见图7,为串口/CAN转以太网服务器的内部结构示意图,串口/CAN转以太网服务器主要包括主控单元和多个接口模块,主控单元和多个接口模块通过USB接口连接。
主控单元主要包括调试接口子模块、Web配置管理子模块、网络协议处理子模块、接口管理子模块、数据处理子模块、接口LED管理子模块和固件升级处理子模块。
其中,调试接口子模块,通过电路与每一个接口模块的调试接口连接,通过切换开关控制与每一个所述接口模块信号的连通,用于对每一个所述接口模块进行调试;以及对主控单元自身进行调试。
Web配置管理子模块,用于对外提供web服务,通过web服务完成设备网络配置、接口功能配置以及固件升级功能。
网络协议处理子模块,用于对外提供不同的网络协议,所述不同的网络协议包括TCP Server、TCP Client、UDP、UDP组播、Modbus TCP网络协议。
接口模块管理子模块,用于负责主控单元和各接口模块之间的参数配置管理、心跳监测、逻辑接口与实际物理接口之间映射规则建立。
数据处理子模块,用于处理与各接口模块之间的USB数据通信,同时负责根据内部协议添加或者删除协议信息。
接口LED管理子模块,用于管理控制每一个接口模块的每路接口的接收和发送LED,在有数据传输的时候进行闪烁指示。固件升级处理子模块,用于负责主控单元的固件升级和每个接口模块的固件升级。
图8为本发明实施例提供的一种串口/CAN转以太网服务器的实现方法,包括:801、配置一个主控单元和多个接口模块,所述主控单元集成有USB主机设备,每一个所述接口模块集成有USB从机设备;802、通过USB集线器连接所述USB主机设备和每一个USB从机设备,以实现所述主控单元和每一个所述接口模块之间的通信连接,每一个所述接口模块自带多路接口,每一个所述接口模块通过自带接口与外界接口设备进行数据通信;其中,接口为串口或CAN接口,USB主机设备、USB集线器和USB从机设备组成USB接口。
本发明实施例提供的一种可配置多路接口的串口/CAN转以太网服务器及其实现方式,采用多接口模块方案,将串口和CAN接口分布于多个独立的接口模块上,一台主控单元通过USB接口和其他负责串口和CAN通讯业务的接口模块进行通讯;通过这种措施,串口或CAN接口的中断信号由多个独立的接口模块承担,主控单元负责“网络中断”和少量的USB中断,从而解决单个主控单元由于过多的“网络中断”+“接口中断”无法实现多个接口的接口服务器的难题,降低多口接口服务器的实现难度和成本。
利用NXP LPC55xx的Flexcomm接口特性,即:同一个Flexcomm既可以配置为UART模式也可以配置为SPI模式。当用户需要CAN接口功能时,将Flexcomm配置为SPI模式,再由SPI接口来扩展CAN功能。使用单刀双掷开关芯片控制切换串口和CAN接口的外围电路,这样用户可以非常方便的控制该服务器的任何一路接口作为串口或者CAN接口,可适用于多种工业应用场景。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (10)
1.一种可配置多路接口的串口/CAN转以太网服务器,其特征在于,包括主控单元和多个接口模块,所述主控单元集成有USB主机设备,每一个所述接口模块集成有USB从机设备,每一个USB从机设备通过USB集线器与所述USB主机设备通信连接,所述USB主机设备、USB集线器和USB从机设备组成USB接口,每一个所述接口模块自带多路接口,每一路接口为串口或CAN接口,每一个所述接口模块通过自带接口与外界接口设备进行数据通信。
2.根据权利要求1所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,所述接口模块为NXP LPC55XX芯片,所述NXP LPC55XX芯片自带8路Flexcomm接口,由所述Flexcomm接口扩展串口或CAN接口。
3.根据权利要求2所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,每一个所述Flexcomm接口包括FC_TXD_MOSI、FC_RXD_MISO、FC_SCK、FC_SSEL四个功能引脚,每一个NXP LPC55XX芯片包括一个GPIO引脚,8路Flexcomm接口共用所述GPIO引脚;当Flexcomm接口工作在UART模式时,只使用FC_TXD_MOSI、FC_RXD_MISO两个引脚,分别作为串口的TXD端口和RXD端口;当Flexcomm接口工作在SPI模式时,Flexcomm接口的四个引脚全部使用,分别作为CAN接口的MOSI、MISO、SCK和SSEL端口。
4.根据权利要求3所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,由所述Flexcomm接口扩展串口或CAN接口,包括:
所述Flexcomm接口的FC_TXD_MOSI、FC_RXD_MISO、FC_SCK、FC_SSEL四个功能引脚分别连接到第一单刀双掷开关芯片TMUX1134的D1、D2、D3和D4引脚,所述NXP LPC55XX芯片的GPIO引脚连接所述第一单刀双掷开关芯片TMUX1134的选通控制引脚SEL1、SEL2、SEL3和SEL4;所述第一单刀双掷开关芯片TMUX1134的S1A引脚连接串口转换芯片的TXD端口,S2A引脚连接串口转换芯片的RXD引脚,S3A引脚和S4A引脚闲置不用,所述第一单刀双掷开关芯片TMUX1134的S1B、S2B、S3B和S4B四个引脚分别连接SPI转CAN控制器芯片的SI引脚、SO引脚、CLK引脚和CS引脚。
所述串口转换芯片的TX/A引脚和RX/B引脚分别连接第二单刀双掷开关芯片TMUX1134的S1A引脚和S2A引脚,所述SPI转CAN控制器芯片的CAN_TXD引脚和CAN_RXD引脚连接CAN收发器TJA1051芯片,所述CAN收发器TJA1051芯片的CAN_H引脚和CAN_L引脚分别连接第二单刀双掷开关芯片TMUX1134的S1B引脚和S2B引脚,第二单刀双掷开关芯片的D1引脚和D2引脚与对外接口相连,所述第二单刀双掷开关芯片TMUX1134的选通控制引脚SEL1、SEL2、SEL3和SEL4均与所述NXP LPC55XX芯片的GPIO引脚连接。
5.根据权利要求4所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,当串口/CAN服务器的指定对外接口被配置为串口功能时,相应的NXP LPC55XX芯片将GPIO引脚置为高电平,第一单刀双掷开关芯片TMUX1134和第二单刀双掷开关芯片TMUX1134的D1、D2、D3和D4以及S1A、S2A、S3A和S4A分别导通,并将对应的Flexcomm接口配置为UART模式,配合串口转换芯片对串口进行扩展;
当串口/CAN服务器的指定对外接口被配置为CAN功能时,相应的NXP LPC55XX芯片将GPIO引脚置为低电平,第一单刀双掷开关芯片TMUX1134和第二单刀双掷开关芯片TMUX1134的D1、D2、D3和D4以及S1B、S2B、S3B和S4B分别导通,并将对应的Flexcomm接口配置为SPI模式,配合SPI转CAN控制器芯片和CAN收发器TJA1051芯片,对CAN接口进行扩展。
6.根据权利要求1-5任一项所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,每一个所述NXP LPC55XX芯片包括MCU单元、电阻R1、电阻R2、电阻R3和电阻R4;
所述电阻R1和电阻R2串联连接在VCC和地线之间,所述电阻R3和所述电阻R4串联连接在VCC和地线之间,所述MCU单元的引脚Gpio1连接在电阻R1和电阻R2之间,所述MCU单元的引脚Gpio2连接在电阻R3和电阻R4之间;
通过MCU单元的引脚Gpio1和引脚Gpio2的不同电平确定本NXP LPC55XX芯片在所有接口模块中的序列号。
7.根据权利要求6所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,
接口模块启动后,等待主控单元下发配置命令,如果主控单元下发的参数配置接口为串口,则将接口模块中对应的Flexcomm接口配置为串口模式,并加载串口转换芯片的驱动;
如果主控单元下发的参数配置接口为CAN接口,则将接口模块中对应的Flexcomm接口配置为SPI模式,并加载SPI转CAN控制器芯片和CAN收发器TJA1051芯片的驱动。
8.根据权利要求7所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,所述主控单元中还包括网络接口,所述串口/CAN转以太网服务器通过网络接口与用户网络终端通信连接,所述串口/CAN转以太网服务器通过每一个接口模块自带的Flexcomm接口与用户接口设备通信连接;
用户网络终端基于TCP/IP协议,通过所述主控单元的网络接口向所述串口/CAN转以太网服务器发送数据,所述串口/CAN转以太网服务器将接收到的数据按照内部通讯协议组装数据包发送到对应的接口模块,所述接口模块对数据包进行解析,将解析后的数据通过自带的Flexcomm接口发送至用户接口设备;
用户接口设备的数据发送到对应的接口模块,所述接口模块将接收到的数据按照内部通讯协议组装数据包,将数据包通过USB接口发送给主控单元,所述主控单元对接收到的数据包进行解析,并将解析后的数据转发至对应的网络接口上,通过网络接口将数据发送给用户网络终端,其中,所述网络接口通过每一个接口模块的序列号,与每一个接口模块建立对应关系。
9.根据权利要求1或8所述的可配置多路接口的串口/CAN转以太网服务器,其特征在于,所述主控单元包括调试接口子模块、Web配置管理子模块、网络协议处理子模块、接口管理子模块、数据处理子模块、接口LED管理子模块和固件升级处理子模块;
所述调试接口子模块,通过电路与每一个接口模块的调试接口连接,通过切换开关控制与每一个所述接口模块信号的连通,用于对每一个所述接口模块进行调试;以及对主控单元自身进行调试;
所述Web配置管理子模块,用于对外提供web服务,通过web服务完成设备网络配置、接口功能配置以及固件升级功能;
所述网络协议处理子模块,用于对外提供不同的网络协议,所述不同的网络协议包括TCP Server、TCP Client、UDP、UDP组播、Modbus TCP网络协议;
所述接口模块管理子模块,用于负责主控单元和各接口模块之间的参数配置管理、心跳监测、逻辑接口与实际物理接口之间映射规则建立;
所述数据处理子模块,用于处理与各接口模块之间的USB数据通信,同时负责根据内部协议添加或者删除协议信息;
所述接口LED管理子模块,用于管理控制每一个接口模块的每路接口的接收和发送LED,在有数据传输的时候进行闪烁指示;
所述固件升级处理子模块,用于负责主控单元的固件升级和每个接口模块的固件升级。
10.一种串口/CAN转以太网服务器的实现方法,其特征在于,包括:
配置一个主控单元和多个接口模块,所述主控单元集成有USB主机设备,每一个所述接口模块集成有USB从机设备;
通过USB集线器连接所述USB主机设备和每一个USB从机设备,以实现所述主控单元和每一个所述接口模块之间的通信连接,每一个所述接口模块自带多路接口,每一个所述接口模块通过自带接口与外界接口设备进行数据通信;
其中,所述接口为串口或CAN接口,所述USB主机设备、USB集线器和USB从机设备组成USB接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033269.6A CN113949745A (zh) | 2021-09-03 | 2021-09-03 | 可配置多路接口的串口/can转以太网服务器及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033269.6A CN113949745A (zh) | 2021-09-03 | 2021-09-03 | 可配置多路接口的串口/can转以太网服务器及其实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113949745A true CN113949745A (zh) | 2022-01-18 |
Family
ID=79327866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111033269.6A Pending CN113949745A (zh) | 2021-09-03 | 2021-09-03 | 可配置多路接口的串口/can转以太网服务器及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113949745A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667934A (zh) * | 2009-08-25 | 2010-03-10 | 中国工程物理研究院电子工程研究所 | Usb接口设备网络化的集中监管装置及监管方法 |
CN206021259U (zh) * | 2016-08-04 | 2017-03-15 | 研华科技(中国)有限公司 | 虚拟串口序列号可固定的usb‑uart集线器 |
CN106991067A (zh) * | 2017-04-14 | 2017-07-28 | 湖南威胜信息技术有限公司 | 用于一主多从式网络的数据交互方法及其嵌入式设备 |
CN210072603U (zh) * | 2019-09-06 | 2020-02-14 | 成都乐创自动化技术股份有限公司 | 一种usb2.0转多通道串口输出装置 |
CN112506732A (zh) * | 2020-12-18 | 2021-03-16 | 京信网络系统股份有限公司 | 一种调试平台 |
-
2021
- 2021-09-03 CN CN202111033269.6A patent/CN113949745A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667934A (zh) * | 2009-08-25 | 2010-03-10 | 中国工程物理研究院电子工程研究所 | Usb接口设备网络化的集中监管装置及监管方法 |
CN206021259U (zh) * | 2016-08-04 | 2017-03-15 | 研华科技(中国)有限公司 | 虚拟串口序列号可固定的usb‑uart集线器 |
CN106991067A (zh) * | 2017-04-14 | 2017-07-28 | 湖南威胜信息技术有限公司 | 用于一主多从式网络的数据交互方法及其嵌入式设备 |
CN210072603U (zh) * | 2019-09-06 | 2020-02-14 | 成都乐创自动化技术股份有限公司 | 一种usb2.0转多通道串口输出装置 |
CN112506732A (zh) * | 2020-12-18 | 2021-03-16 | 京信网络系统股份有限公司 | 一种调试平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853305B2 (en) | Method of communication for master device and slave device on synchronous data bus wherein master and slave devices are coupled in parallel | |
CN108111382B (zh) | 基于i3c总线的通信装置及其通信方法 | |
CN101610192B (zh) | 一种通信从机、总线级连方法及系统 | |
EP4116836B1 (en) | Equalization time configuration method, chip, and communications system | |
CN203658996U (zh) | 一种芯片接口复用电路及移动终端 | |
CN113419983A (zh) | 一种串口服务器及串口服务器的实现方法 | |
US11394583B2 (en) | Ethernet interconnection circuit and apparatus | |
CN103814367A (zh) | 具有通过用于串行芯片间数据传输的物理传输路径的逻辑多通道通信的通信装置 | |
CN115017083A (zh) | 数据传输系统、数据传输装置以及数据传输方法 | |
JP2013084266A (ja) | サーバー及びそのシリアルインタフェース切換回路 | |
CN111948971A (zh) | 一种智能卡管理装置及其数据转接方法 | |
CN112147927A (zh) | 一种双通道总线通信的多轴运动控制系统 | |
US6954810B2 (en) | Transparent switch | |
US11288223B2 (en) | Bridge chip with function of expanding external devices and associated expansion method | |
CN111858459B (zh) | 处理器及计算机 | |
CN113949745A (zh) | 可配置多路接口的串口/can转以太网服务器及其实现方法 | |
CN216873219U (zh) | 通信电路及多主通信系统 | |
EP2300925B1 (en) | System to connect a serial scsi array controller to a storage area network | |
CN112783071A (zh) | 一种sdio控制器、fpga板卡和sdio测试系统 | |
CN110471881B (zh) | 一种实现多个从设备与spi主设备快速通讯方法 | |
CN112069103A (zh) | 一种多模块与主机通信的方法及系统 | |
WO2021066001A1 (ja) | 情報処理装置及び通信切替方法 | |
US20210303496A1 (en) | Actuation of data transmission lanes between states | |
EP1335615B1 (en) | A method of determining an active or a passive role assignment to a control means of a network element | |
JP4346539B2 (ja) | 制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220118 |