一种基于CPLD的串口信号检测的方法、装置与系统与流程

文档序号:11199081阅读:724来源:国知局
一种基于CPLD的串口信号检测的方法、装置与系统与流程

本发明涉及串口技术领域,特别是涉及一种基于cpld的串口信号检测的方法、装置与系统。



背景技术:

在很多普通的电路中,常用复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld)作为单板上所有串口信号的中转。一个单板上可以设置有多个特定芯片,每个特定芯片传输的串口信号即为一路串口信号。特定芯片发送的信号往往需要经过中转芯片的处理后传输至cpld,再经由cpld的中转传输至上位机。上位机是指人可以直接发出操作命令的计算机,一般为pc机。

传统方式中,常用cpld作为串口信号的中转,但是cpld并不对串口做额外的管理。在单板上存在多路串口信号的情况下,如果发生串口信号无输出的问题,特别是该串口信号对应一个以上的中转芯片时,很难快速定位出串口信号出现问题的地方。

可见,如何实现对串口信号的检测,是本领域技术人员亟待解决的问题。



技术实现要素:

本发明实施例的目的是提供一种基于cpld的串口信号检测的方法、装置与系统,可以实现对串口信号的检测,及时、快速的发现串口信号出现问题的地方。

为解决上述技术问题,本发明实施例提供一种基于cpld的串口信号检测的方法,包括:

接收上位机发送的通信指令;

依据所述通信指令,建立特定串口与目标芯片的串口通信;

判断是否接收到所述目标芯片发送的串口信号;

若未接收到所述目标芯片发送的串口信号,则检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号;

若存在输入端信号与输出端信号不一致的中转芯片,则将所述中转芯片的标识信息发送至所述上位机。

可选的,所述若存在输入端信号与输出端信号不一致的中转芯片,则将所述中转芯片的标识信息发送至所述上位机包括:

若存在输入端信号与输出端信号不一致的中转芯片,则存储所述中转芯片的标识信息;

当接收到所述上位机发送的状态指令后,将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括:

当在规定时间内,接收到所述目标芯片发送的串口信号,则控制led灯处于常亮状态;

当在规定时间内,未接收到所述目标芯片发送的串口信号,则根据所述中转芯片的标识信息,控制led灯执行对应的操作。

本发明实施例还提供了一种基于cpld的串口信号检测的装置,包括接收单元、建立单元、判断单元、检测单元和发送单元,

所述接收单元,用于接收上位机发送的通信指令;

所述建立单元,用于依据所述通信指令,建立特定串口与目标芯片的串口通信;

所述判断单元,用于判断是否接收到所述目标芯片发送的串口信号;

若在规定时间内,未接收到所述目标芯片发送的串口信号,则触发所述检测单元,所述检测单元,用于检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号;

所述发送单元,用于若存在输入端信号与输出端信号不一致的中转芯片,将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括存储单元,

若存在输入端信号与输出端信号不一致的中转芯片,则触发所述存储单元,所述存储单元,用于存储所述中转芯片的标识信息;

所述接收单元还用于当接收到所述上位机发送的状态指令后,触发所述发送单元,将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括控制单元,

当在规定时间内,接收到所述目标芯片发送的串口信号,则触发所述控制单元,所述控制单元,用于控制led灯处于常亮状态;

当在规定时间内,未接收到所述目标芯片发送的串口信号,则触发所述控制单元,所述控制单元还用于根据所述中转芯片的标识信息,控制led灯执行对应的操作。

本发明实施例还提供了一种基于cpld的串口信号检测的系统,包括:串口模块、cpld、电平转换模块、中转芯片和目标芯片;

所述串口模块与所述cpld连接,用于接收上位机发送的通信指令,并将所述通信指令转发至所述cpld;

所述cpld,用于接收上位机发送的通信指令,并依据所述通信指令,建立特定串口与目标芯片的串口通信;

所述中转芯片分别与所述目标芯片以及所述cpld连接,用于将所述目标芯片发送的信号转换为串口信号,并将所述串口信号发送至所述cpld;

所述cpld还用于判断是否接收到所述串口信号;

所述电平转换模块分别与所述中转芯片以及所述cpld连接,当所述cpld未接收到所述目标芯片发送的串口信号时,所述cpld还用于依据所述电平转换模块获取各个所述中转芯片的输入端与输出端的信号;

若存在输入端信号与输出端信号不一致的中转芯片,所述cpld还用于将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括led灯,

所述led灯与所述cpld连接,当在规定时间内,所述cpld接收到所述目标芯片发送的串口信号,则控制所述led灯处于常亮状态;

当在规定时间内,所述cpld未接收到所述目标芯片发送的串口信号,则根据所述中转芯片的标识信息,控制所述led灯执行对应的操作。

由上述技术方案可以看出,cpld根据接收到的上位机发送的通信指令,建立特定串口与目标芯片的串口通信;通过判断是否接收到所述目标芯片发送的串口信号,来作为检测串口链路是否可以正常通信的依据。当未接收到所述目标芯片发送的串口信号时,则说明由目标芯片向cpld发送串口信号时所经过的中转芯片可能出现了问题,此时可以检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号;若存在输入端信号与输出端信号不一致的中转芯片,则说明该中转芯片出现了问题,可以将所述中转芯片的标识信息发送至所述上位机。可见,当串口信号无法正常传输时,通过cpld的检测可以及时、快速的发现串口信号出现问题的地方。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种基于cpld的串口信号检测的方法的流程图;

图2为本发明实施例提供的一种基于cpld的串口信号检测的装置的结构示意图;

图3为本发明实施例提供的一种基于cpld的串口信号检测的系统的结构示意图;

图4为本发明实施例提供的一种涉及3个中转芯片的串口信号检测的系统的拓扑结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

接下来,详细介绍本发明实施例所提供的一种基于cpld的串口信号检测的方法。图1为本发明实施例提供的一种基于cpld的串口信号检测的方法的流程图,该方法包括:

s101:接收上位机发送的通信指令。

单板上存在多路串口信号时,可以通过通信指令,选取出一路串口信号对其进行检查,即检测传输该路串口信号的链路是否能够正常通信。

s102:依据所述通信指令,建立特定串口与目标芯片的串口通信。

通信指令可以用于指示对哪一路串口信号进行检测。传输该路串口信号的串口即为特定串口,相应的,产生该串口信号的特定芯片即为目标芯片。

s103:判断是否接收到所述目标芯片发送的串口信号。

确定了目标芯片后,cpld可以通过判断是否接收到所述目标芯片发送的串口信号,来作为检测串口链路是否可以正常通信的依据。

当cpld未接收到目标芯片发送的串口信号时,则说明传输该串口信号的链路出现了问题。

s104:检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号。

目标芯片产生的信号往往需要经过中转芯片的处理后发送至cpld。当中转芯片出现问题时,则cpld将无法接收到目标芯片发送的串口信号,即造成串口信号无输出。故此,在本发明实施例中,可以对中转芯片的输入端和输出端信号进行检测。

s105:若存在输入端信号与输出端信号不一致的中转芯片,则将所述中转芯片的标识信息发送至所述上位机。

中转芯片可以用于对目标芯片传输的信号进行信号模式的转换。以一个中转芯片为例,当该中转芯片可以正常工作时,信号经过该中转芯片的处理后,可以得到对应模式的信号;当该中转芯片出现问题时,该中转芯片的输出端可能没有信号的输出或者是输出错误形式的信号,也即,该中转芯片的输入端信号与输出端信号不一致。

标识信息可以是用于区分不同中转芯片的信息。每个中转芯片有其对应的标识信息。在本发明实施例中,可以对中转芯片进行编号,例如,目标芯片与cpld之间的通信需要经过3个中转芯片,则可以将这3个中转芯片依次编号为中转芯片a、中转芯片b和中转芯片c。可以将该编号作为中转芯片的标识信息。

当检测到存在输入端信号与输出端信号不一致的中转芯片时,则可以将所述中转芯片的标识信息发送至所述上位机。在本发明实施例中,cpld将中转芯片的标识信息发送至上位机的方式可以有多种。一种方式可以是由cpld直接向上位机发送该标识信息,具体的,可以建立上位机与cpld的实时通信,以便于当cpld检测到输入端信号与输出端信号不一致的中转芯片时,可以直接将所述中转芯片的标识信息发送至所述上位机。

另一种方式可以是在接收到上位机发送的指令信息后,再将所述中转芯片的标识信息发送给所述上位机,具体的,当存在输入端信号与输出端信号不一致的中转芯片时,cpld则存储所述中转芯片的标识信息;当接收到所述上位机发送的状态指令后,将所述中转芯片的标识信息发送至所述上位机。

其中,状态指令可以是cpld向上位机发送标识信息的触发条件。例如,该状态指令可以是“uartshowall”,当cpld接收到上位机发送的该指令后,便可以将检测出的出现问题的中转芯片的标识信息发送给上位机。

本发明实施例以一路串口信号的传输为例,对该路串口信号的通信进行检测,即检测串口链路是否能够正常通信。其它路串口信号的检测过程与其类似,在此不再赘述。参照上述过程,可以完成对多路串口信号的检测。

由上述技术方案可以看出,cpld根据接收到的上位机发送的通信指令,建立特定串口与目标芯片的串口通信;通过判断是否接收到所述目标芯片发送的串口信号,来作为检测串口链路是否可以正常通信的依据。当未接收到所述目标芯片发送的串口信号时,则说明由目标芯片向cpld发送串口信号时所经过的中转芯片可能出现了问题,此时可以检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号;若存在输入端信号与输出端信号不一致的中转芯片,则说明该中转芯片出现了问题,可以将所述中转芯片的标识信息发送至所述上位机。可见,当串口信号无法正常传输时,通过cpld的检测可以及时、快速的发现串口信号出现问题的地方。

以一路串口信号为例,在本发明实施例中,为了便于管理员可以直接观察到哪个中转芯片出现了问题,可以设置led灯,通过led灯不同的工作状态反映出现问题的中转芯片。

具体的,当在规定时间内,cpld接收到所述目标芯片发送的串口信号,则控制led灯处于常亮状态;当在规定时间内,未接收到所述目标芯片发送的串口信号,则根据所述中转芯片的标识信息,控制led灯执行对应的操作。

规定时间可以根据中转芯片正常工作时,将串口信号传输至cpld所花费的时间确定。

在本发明实施例中,可以将led灯处于常亮状态表示串口信号的正常通信;将led灯处于闪烁状态表示串口信号无法实现正常通信。

其中,可以根据中转芯片的个数设置led灯的几种闪烁模式。例如,一路串口信号的传输需要经过3个中转芯片,依次为中转芯片a、中转芯片b和中转芯片c,对应的,可以将led的闪烁模式设置为3种,分别为慢闪(闪烁频率为1hz)、正常闪烁(闪烁频率为2hz)和快闪(闪烁频率为4hz),慢闪代表中转芯片a出现问题,正常闪烁代表中转芯片b出现问题,快闪代表中转芯片c出现问题。

通过led灯的不同工作模式,管理员可以直观的获知哪个中转芯片出现了问题,从而便于管理员可以及时发现问题并处理。

图2为本发明实施例提供的一种基于cpld的串口信号检测的装置的结构示意图,包括接收单元21、建立单元22、判断单元23、检测单元24和发送单元25,

所述接收单元21,用于接收上位机发送的通信指令。

所述建立单元22,用于依据所述通信指令,建立特定串口与目标芯片的串口通信。

所述判断单元23,用于判断是否接收到所述目标芯片发送的串口信号。

若在规定时间内,未接收到所述目标芯片发送的串口信号,则触发所述检测单元24,所述检测单元24,用于检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号。

所述发送单元25,用于若存在输入端信号与输出端信号不一致的中转芯片,将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括存储单元,

若存在输入端信号与输出端信号不一致的中转芯片,则触发所述存储单元,所述存储单元,用于存储所述中转芯片的标识信息;

所述接收单元还用于当接收到所述上位机发送的状态指令后,触发所述发送单元,将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括控制单元,

当在规定时间内,接收到所述目标芯片发送的串口信号,则触发所述控制单元,所述控制单元,用于控制led灯处于常亮状态;

当在规定时间内,未接收到所述目标芯片发送的串口信号,则触发所述控制单元,所述控制单元还用于根据所述中转芯片的标识信息,控制led灯执行对应的操作。

图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,cpld根据接收到的上位机发送的通信指令,建立特定串口与目标芯片的串口通信;通过判断是否接收到所述目标芯片发送的串口信号,来作为检测串口链路是否可以正常通信的依据。当未接收到所述目标芯片发送的串口信号时,则说明由目标芯片向cpld发送串口信号时所经过的中转芯片可能出现了问题,此时可以检测所述目标芯片对应的各个中转芯片的输入端与输出端的信号;若存在输入端信号与输出端信号不一致的中转芯片,则说明该中转芯片出现了问题,可以将所述中转芯片的标识信息发送至所述上位机。可见,当串口信号无法正常传输时,通过cpld的检测可以及时、快速的发现串口信号出现问题的地方。

图3为本发明实施例提供的一种基于cpld的串口信号检测的系统的结构示意图,包括:串口模块31、cpld32、电平转换模块33、中转芯片34和目标芯片35;

所述串口模块31与所述cpld32连接,用于接收上位机发送的通信指令,并将所述通信指令转发至所述cpld32。

所述cpld32,用于接收上位机发送的通信指令,并依据所述通信指令,建立特定串口与目标芯片35的串口通信;

所述中转芯片34分别与所述目标芯片35以及所述cpld32连接,用于将所述目标芯片发送的信号转换为串口信号,并将所述串口信号发送至所述cpld32;

所述cpld32还用于判断是否接收到所述串口信号;

所述电平转换模块33分别与所述中转芯片34以及所述cpld32连接,当所述cpld32未接收到所述目标芯片发送的串口信号时,所述cpld32还用于依据所述电平转换模块获取各个所述中转芯片的输入端与输出端的信号;

若存在输入端信号与输出端信号不一致的中转芯片,所述cpld32还用于将所述中转芯片的标识信息发送至所述上位机。

可选的,还包括led灯,

所述led灯与所述cpld连接,当在规定时间内,所述cpld接收到所述目标芯片发送的串口信号,则控制所述led灯处于常亮状态;

当在规定时间内,所述cpld未接收到所述目标芯片发送的串口信号,则根据所述中转芯片的标识信息,控制所述led灯执行对应的操作。

在本发明实施例中,对于每一个中转芯片,可以连接对应的电平转换模块,并将该电平转换模块与cpld连接,以便于cpld可以直接获取到每个中转芯片的输入端和输出端的信号。如图4所示,以一路串口信号需要经过3个中转芯片的处理为例,目标芯片产生的信号,需要依次经过中转芯片c、中转芯片b和中转芯片a的处理,传输至cpld,再由cpld将该串口信号通过串口模块发送至上位机。其中,每个中转芯片连接有一个电平转换模块。led灯与cpld连接,当检测出哪一个中转芯片出现问题时,cpld可以控制led灯进行相应的闪烁。

图3所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。

以上对本发明实施例所提供的一种基于cpld的串口信号检测的方法、装置与系统进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1