CN113805514A - 一种基于fpga的串口控制指令处理方法以及上位机、下位机 - Google Patents

一种基于fpga的串口控制指令处理方法以及上位机、下位机 Download PDF

Info

Publication number
CN113805514A
CN113805514A CN202111102958.8A CN202111102958A CN113805514A CN 113805514 A CN113805514 A CN 113805514A CN 202111102958 A CN202111102958 A CN 202111102958A CN 113805514 A CN113805514 A CN 113805514A
Authority
CN
China
Prior art keywords
serial port
instruction
data
control
processing module
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.)
Granted
Application number
CN202111102958.8A
Other languages
English (en)
Other versions
CN113805514B (zh
Inventor
郝创博
王宏君
李帅衡
张彤
王东豪
章宽爽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jinghang Computing Communication Research Institute
Original Assignee
Beijing Jinghang Computing Communication Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jinghang Computing Communication Research Institute filed Critical Beijing Jinghang Computing Communication Research Institute
Priority to CN202111102958.8A priority Critical patent/CN113805514B/zh
Publication of CN113805514A publication Critical patent/CN113805514A/zh
Application granted granted Critical
Publication of CN113805514B publication Critical patent/CN113805514B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明涉及一种基于FPGA的串口控制指令处理方法以及上位机、下位机,涉及数字电子技术领域,解决智能化和自动化控制逻辑简单的问题,所述方法包括:接收至少一个指令数据,所述指令数据包括;串口标识、控制信息和串口控制指令,所述控制信息表征不同时序控制场景下的控制策略;根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,每一个所述数据处理模块对应一个所述串口标识;各所述数据处理模块根据所述控制信息,确定串口控制指令的发送方式;各所述数据处理模块根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。本发明提供的技术方案能够提高设备的智能化和自动化的程度。

Description

一种基于FPGA的串口控制指令处理方法以及上位机、下位机
技术领域
本发明涉及数字电子技术领域,尤其涉及一种基于FPGA的串口控制指令处理方法以及上位机、下位机。
背景技术
近年来,智能化和自动化成为技术的发展趋势,因此如何能使设备按照预设的流程,执行该流程下各个串口控制指令成为技术的热点。
FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)具有布线资源丰富,可重复编程和集成度高,投资较低的特点。因此,研发人员通常利用CPU(CentralProcess Unit,中央处理器)、MCU(Microcontroller Unit,微控制单元)与FPGA组成相应的串口控制指令处理体系。
然而,上述方法通常控制逻辑简单,从而降低智能化和自动化的程度,因而不适用于对时序控制要求高的场景。
发明内容
鉴于上述的分析,本发明旨在提供一种基于FPGA的串口控制指令处理方法以及上位机、下位机,以提高设备的智能化和自动化的程度。
本发明的目的主要是通过以下技术方案实现的:
第一方面,本发明实施例提供了一种基于FPGA的串口控制指令处理方法,包括:
接收至少一个指令数据,所述指令数据包括;串口标识、控制信息和串口控制指令,所述控制信息表征不同时序控制场景下的控制策略;
根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,每一个所述数据处理模块对应一个所述串口标识;
各所述数据处理模块根据所述控制信息,确定串口控制指令的发送方式;
各所述数据处理模块根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。
进一步地,所述控制信息包括:控制逻辑和控制参数;
各所述数据处理模块根据所述控制逻辑和所述控制参数,确定串口控制指令的发送方式;
所述控制逻辑包括:瞬时发送、延时发送和数据比对;所述控制参数包括:延时时间、第一待比对数据和待比对串口标识。
进一步地,各所述数据处理模块根据所述控制逻辑和所述控制参数,确定串口控制指令的发送方式,包括:
所述控制逻辑为延时发送时,所述控制参数为延时时间;
各所述数据处理模块确定当前时刻经过所述延时时间后,将所述串口控制指令发送至相应的串口。
进一步地,各所述数据处理模块根据所述控制逻辑和所述控制参数,确定串口控制指令的发送方式,包括:
所述控制逻辑为数据比对时,所述控制参数为第一待比对数据和待比对串口标识;
根据所述待比对串口标识,从相应的串口获取所述第二待比对数据;
比对所述第一待比对数据和所述第二待比对数据;
根据对比结果,确定是否将所述串口控制指令发送至相应的串口。
进一步地,在所述根据所述待比对串口标识,从相应的串口获取所述第二待比对数据之前,所述方法还包括:
所述指令数据包括:比对时间阈值;
根据所述比对时间阈值,确定所述串口控制指令是否超时;
确定所述串口控制指令不超时时,执行根据所述待比对串口标识,从相应的串口获取第二待比对数据;
确定所述串口控制指令超时,删除所述串口控制指令。
进一步地,所述根据所述比对时间阈值,确定所述串口控制指令是否超时,包括:
记录接收到所述待比对串口标识的第一时间节点;
根据所述第一时间节点和所述时间阈值,确定第二时间节点;
在当前时刻到达所述第二时间节点前,确定所述串口控制指令不超时;
在当前时刻到达所述第二时间节点时,确定所述串口控制指令超时。
第二方面,本发明实施例提供了一种基于FPGA的串口控制指令处理方法,应用于上位机,包括:
采集数据文件和指令文件,所述数据文件包括:串口控制指令、串口标识和控制参数,所述指令文件包括控制逻辑;
根据所述数据文件和指令文件生成至少一个指令数据包,每一个所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;
根据所述数据文件中的串口标识,确定并行执行串口数量;
根据所述并行执行串口的数量,设置相同数量的数据通道,每一个所述数据通道对应一个所述串口标识;
根据各所述数据通道对应的指令数量和预设的传输速率,为各所述数据通道配置传输位宽;
通过各所述数据通道将所述指令数据发送给下位机的指令处理模块,所述指令处理模块与所述数据通道一一对应。
第三方面,本发明实施例提供了一种基于FPGA的串口控制指令处理方法,应用于下位机,包括:
指令处理模块接收所述上位机发送的指令数据包,所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;
各所述指令处理模块将所述指令数据包中的各所述指令数据分别存储在缓存上;
解析所述指令数据得到所述串口标识、所述串口控制指令和所述串口控制指令的控制信息;
各所述指令处理模块根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,所述数据处理模块与所述指令处理模块一一对应;
各所述数据处理模块根据所述控制信息,确定串口控制指令的发送方式;
各所述数据处理模块根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。
第四方面,本发明实施例提供了一种上位机,包括:采集模块、数据包生成模块、通道配置模块和发送模块;
所述采集模块用于采集数据文件和指令文件,所述数据文件包括:串口控制指令、串口标识和控制参数,所述指令文件包括控制逻辑;
所述数据包生成模块用于根据所述数据文件和指令文件生成至少一个指令数据包,每一个所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;
所述通道配置模块用于根据所述数据文件中的串口标识,确定并行执行串口数量;根据所述并行串口的数量,设置相同量数的数据通道,每一个所述数据通道对应一个所述串口标识;
所述发送模块用于通过各所述数据通道将所述指令数据发送给下位机的指令处理模块,所述指令处理模块与所述数据通道一一对应。
第五方面,本发明实施例提供了一种下位机,包括:至少一个指令处理模块和至少一个数据处理模块;
所述指令处理模块用于接收所述上位机发送的指令数据包,所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;将所述指令数据包中的各所述指令数据分别存储在缓存上;解析所述指令数据得到所述串口标识、所述串口控制指令和所述串口控制指令的控制信息;
各所述指令处理模块还用于根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,所述数据处理模块与所述指令处理模块一一对应;
各所述数据处理模块用于根据所述控制信息,确定串口控制指令的发送方式;根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。
本发明实施例提供的技术方案具有下述技术效果的至少一个:
1、通常一个系统由几个主要设备构成,各设备之间通过相互配合才能实现该系统的各个功能,同时各设备通常通过串口连接的方式与处理器相连。因此,在本发明提供的技术方案中,针对每一个串口,设置专门的数据处理模块,该数据处理模块只处理特定串口的串口控制指令。通过上述方式,可以同时实现各设备间时序控制以及每个设备的时序控制。其中,各设备间时序控制,可以增强各设备间的协同作用,以便于完成复杂的操作,从而提高整个系统的智能化和自动化的程度。
2、设置控制信息,将时序控制场景下的控制策略数据化,并按照控制信息对应的发送方式,将控制指令发送给通过串口连接处理器的各设备,使得各设备能够精确地按照控制策略执行相应的动作,从而进一步提高整个系统的智能化和自动化程度。
3、将数据处理模块和指令处理模块设置在下位机,其中指令处理模块负责接收指令数据,并将指令数据存储到下位机的缓存中。而数据处理模块负责解析指令数据。对于CPU而言,上述两个功能非但不是主要功能,还能打断CPU正常的工作。对于一个正在运行的系统,CPU被打断会造成不可估量的损失。但对于系统整体自动化和智能化,上述两个模块具有十分重要的地位,不能被随意的简化或被取消。因此,将数据处理模块和指令处理模块设置在下位机是为了兼顾CPU性能和提高系统整体自动化和智能化的程度。
4、基于FPGA处理串口控制指令,使得各设备间的时序控制的控制精度达到微秒级,以实现各设备间的精准配合。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为本发明实施例提供的一种汽车转向的示意图;
图2为本发明实施例提供的一种上位机和下位机的结构示意图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
通常的控制指令处理方法为根据指令的接收顺序将指令存储到缓存中,再按照指令的接收顺序将指令发送到各个串口,或者将没有时序性的多个指令同时发送给各串口。指令接收顺序不能等同于一个系统中各设备间指令的时序性,因此现有技术控制逻辑简单,从而降低了智能化和自动化的程度。
为了解决上述技术问题,本发明实施例提供了一种基于FPGA的串口控制指令处理方法,包括以下步骤:
步骤101、接收至少一个指令数据,指令数据包括;串口标识、控制信息和串口控制指令。
在本发明实施例中,控制信息表征不同时序控制场景下的控制策略。
步骤102、根据串口标识,将各指令数据分配至至少一个数据处理模块中,每一个数据处理模块对应一个串口标识。
步骤103、各数据处理模块根据控制信息,确定串口控制指令的发送方式。
步骤104、各数据处理模块根据串口标识,以确定的发送方式,将串口控制指令发至相应的串口。
在本发明实施例中,指令的发送方式包括:瞬时发送,延时发送和比较发送,发送方式与控制策略密切相关。
其中,控制策略主要考虑两个方面:
从事件关联性看,如果当前指令触发的事件与其他指令触发的事件没有关联,或者在特定状态下与其他指令触发的事件没有关联,或者在特定状态下不受其他指令触发的事件的影响,可以选择瞬时发送。如果其他指令触发的事件是当前指令触发的事件的前提条件,此时需要在其他指令触发的事件发生后,获取该事件产生的数据(第二待比对数据),并比对获取的数据和预设的标准数据(第一待比对数据),之后根据对比结果,确定是否将串口控制指令发送至相应的串口,此方式为比较发送。
从时间上看,当前指令触发的事件发生在一些指令触发事件之后,此时当前指令选择可以延时发送。
具体地,如图1所示,汽车A要在B处拐弯,如果设计一段程序,实现上述过程,则在该场景下涉及如下指令:减速指令,转向指令,转向灯开启指令,转向灯关闭指令和路况拍摄指令。其中,减速指令触发事件为汽车A减速,转向指令触发事件为汽车A转弯,转向灯开启指令触发事件为转向灯开启,转向灯关闭指令触发事件为转向灯关闭,路况拍摄指令触发事件为拍摄设备采集当前路面信息。
显然,采集当前路面信息与其它事件不相关,因此路况拍摄指令选择瞬时发送。在转弯的场景下,转向灯的开启不受其他事件影响,因此转向灯开启指令为瞬时发送。减速指令涉及减速时机和减速加速度,因此是否触发减速指令需要根据路面信息做进一步确定。即路面信息是确定减速时机和减速加速度的前提条件,此时要先通过拍摄设备的串口获取路面信息,再比对获取到路面信息和预设的减速的路面信息,最后确定获取到路面信息和预设的减速的路面信息相匹配时,将减速指令发送给减速设备。因此,减速指令为比较发送。同理,在当前速度满足安全速度时,发送转向指令。因此,转向指令的发送方式为比较发送。转向灯关闭在汽车A完成转向之后,因此转向灯关闭指令可以选择延时发送,通过设置合理的延时时间保证汽车A先完成转向,再关闭转向灯。也可以选择比较发送,在确定汽车A完成转向后,关闭转向灯。需要说明的是,上述例子只是为了展示各指令间的逻辑关系,不能理解为对本发明技术方案的限定。
从上述例子也可以看出,各指令之间的关联表面上看是单纯的先后关系,而但本质上是逻辑的组合。因此,如果按照现有技术的方式处理指令,其指令的处理顺序基本上是先到先处理,而上述方式显然不能实现指令之间的配合。如果指令之间配合不好,汽车A无法完成转向。
为了实现各指令相互配合,各设备指令的发送顺序要符合各事件发生的逻辑,而对于各事件发生的逻辑,时序性是最常见的表达方式。所以本发明实施例采用控制信息表征控制策略,以保证各指令的发送顺序要符合各事件发生的逻辑。同时,采用数据处理模块与串口一一对应的方式,实现每一个串口的指令都能单独处理,以配合控制信息和FPGA的使用。
针对上述控制逻辑,本发明实施例利用控制信息表征上述控制策略,其中控制信息包括:控制逻辑和控制参数。各数据处理模块根据控制逻辑和控制参数,确定串口控制指令的发送方式。
具体地,对于瞬时发送,控制逻辑为瞬时发送,控制参数可以为空或不设定控制参数。
对于延时发送,控制逻辑为延时发送,控制参数为延时时间。各数据处理模块确定当前时刻经过延时时间后,将串口控制指令发送至相应的串口。
对于比较发送,控制逻辑为数据比对,控制参数为第一待比对数据和待比对串口标识。根据待比对串口标识,从相应的串口获取第二待比对数据。比对第一待比对数据和第二待比对数据,根据对比结果,确定是否将串口控制指令发送至相应的串口。
与其他指令发送方式不同,比较发送需要从其它设备采集数据,才能触发指令的发送。在实际过程中,网络延时和数据包丢失会导致该类命令无法发送,如果不对这种情况进行处理,数据处理模块无法继续处理其他串口控制指令,为了解决上述问题,本发明实施例获取到第二待对比数据之前,判断串口控制指令是否超时。
具体地,记录接收到待比对串口标识的第一时间节点,根据第一时间节点和时间阈值,确定第二时间节点。
在当前时刻到达第二时间节点前,确定串口控制指令不超时。此时执行根据待比对串口标识,从相应的串口获取第二待比对数据。
在当前时刻到达第二时间节点时,确定串口控制指令超时。此时,删除串口控制指令。
下面以上位机和下位机为例来说明如何实现实施例中的具体方案。
如图2所示,本发明实施例提供了一种上位机,包括:采集模块201、数据包生成模块202、通道配置模块203和发送模块204。
如图2所示,本发明实施例提供了一种下位机,包括:至少一个指令处理模块301和至少一个数据处理模块302。
采集模块201用于采集数据文件和指令文件。数据文件包括:串口控制指令、串口标识和控制参数,指令文件包括控制逻辑。具体地,采集模块201分别设置数据采集单元和指令采集单元,数据采集单元负责采集数据文件,指令采集单元负责采集指令文件。
数据包生成模块202用于根据数据文件和指令文件生成至少一个指令数据包,每一个指令数据包包括:至少一个指令数据,每一个指令数据包括:串口标识、串口控制指令、串口控制指令的控制参数和串口控制指令的控制逻辑。具体地,通过数据包生成模块202可以将多个相关联的串口控制指令做成一个数据包,该数据包可以被多次调用,如此可以极大提高设备的智能性和自动化。例如,一个工艺包括多道工序,可以将各工序对应的指令添加到一个数据包中,每次启动该工艺时,只需调用该数据包即可。
通道配置模块203根据数据文件中的串口标识,确定并行执行串口数量;根据并行串口的数量,设置相同数量的数据通道,每一个数据通道对应一个串口标识。具体地,在通道配置模块203中配置DMA,如此通道配置模块203可以配置数据传输位宽以及数据通道,保证每一个串口对应的指令都能高效地传输至下位机。因为数据包中封装了大量串口控制指令,同时传输的速率缓慢。因此传输时根据串口标识,对指令进行分组,在针对每一组建立通道,以加快传输速度。又因为每一个串口对应的指令数量不同,所以各通道的数据量不同。为了实现各通道的传输速率能够满足其对应的数据传输量,通过配置在通道配置模块203中的DMA,根据每一个通道的数据传输量和预设的传输速率,设置传输位宽。此外,通过分组也便于下位机针对每一各串口的指令进行单独处理。需要说明的是,数据通道分两种,第一种用于将数据从上位机传输至下位机,第二种用于将数据从下位机传输至上位机。
发送模块204用于通过各数据通道将指令数据发送给下位机的指令处理模块,指令处理模块与数据通道一一对应。需要说明的是,在本发明实施例的场景中,指令处理模块与第一种数据通道一一对应。
指令处理模块301用于接收上位机发送的指令数据包,指令数据包包括:至少一个指令数据,每一个指令数据包括:串口标识、串口控制指令、串口控制指令的控制信息;将指令数据包中的各指令数据分别存储在缓存上。具体地,指令处理模块301与数据通道一一对应,因此每一个指令处理模块301只处理一个串口对应的串口控制指令。
各指令处理模块301还用于根据串口标识,将各指令数据分配至至少一个数据处理模块中,数据处理模块302与指令处理模块301一一对应。各数据处理模块302用于根据控制信息,确定串口控制指令的发送方式;根据串口标识,以确定的发送方式,将串口控制指令发至相应的串口。
具体地,指令的发送方式分为:延时发送、瞬时发送和比较发送。发动方式的确定通过控制信息实现,其中控制信息包括:控制逻辑和控制参数。对于瞬时发送,控制逻辑为瞬时发送,控制参数可以为空或不设定控制参数。对于延时发送,控制逻辑包括延时发送,控制参数包括延时时间。对于比较发送,控制逻辑包括:数据比对,控制参数包括:第一待比对数据和待比对串口标识。
其中延时发送通过时间来控制,可以在下位机设置计时单元,计时单元与数据处理模块302一一对应,在确定指令发送方式为延时发送时,计时单元开始计时。
比较发送时需要通过比对确定预设发送条件被触发时,发送串口控制指令。在发送方式为比较发送时,数据处理模块302根据指令数据中的待比对串口标识,从相应的串口中获取数据,再根据获取到的数据判断数据是否满足控制逻辑,在确定满足控制逻辑时,发送串口控制指令。为了提高各模块的运行效率,可以设置数据辅助处理模块。数据辅助处理模块代替数据处理模块302从串口获取数据,并完成比对,最后将比对结果发送给数据处理单元。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种基于FPGA的串口控制指令处理方法,其特征在于,包括:
接收至少一个指令数据,所述指令数据包括;串口标识、控制信息和串口控制指令,所述控制信息表征不同时序控制场景下的控制策略;
根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,每一个所述数据处理模块对应一个所述串口标识;
各所述数据处理模块根据所述控制信息,确定串口控制指令的发送方式;
各所述数据处理模块根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述控制信息包括:控制逻辑和控制参数;
各所述数据处理模块根据所述控制逻辑和所述控制参数,确定串口控制指令的发送方式;
所述控制逻辑包括:瞬时发送、延时发送和数据比对;所述控制参数包括:延时时间、第一待比对数据和待比对串口标识。
3.根据权利要求2所述的方法,其特征在于,
各所述数据处理模块根据所述控制逻辑和所述控制参数,确定串口控制指令的发送方式,包括:
所述控制逻辑为延时发送时,所述控制参数为延时时间;
各所述数据处理模块确定当前时刻经过所述延时时间后,将所述串口控制指令发送至相应的串口。
4.根据权利要求2所述的方法,其特征在于,
各所述数据处理模块根据所述控制逻辑和所述控制参数,确定串口控制指令的发送方式,包括:
所述控制逻辑为数据比对时,所述控制参数为第一待比对数据和待比对串口标识;
根据所述待比对串口标识,从相应的串口获取所述第二待比对数据;
比对所述第一待比对数据和所述第二待比对数据;
根据对比结果,确定是否将所述串口控制指令发送至相应的串口。
5.根据权利要求1至4所述的方法,其特征在于,
在所述根据所述待比对串口标识,从相应的串口获取所述第二待比对数据之前,所述方法还包括:
所述指令数据包括:比对时间阈值;
根据所述比对时间阈值,确定所述串口控制指令是否超时;
确定所述串口控制指令不超时时,执行根据所述待比对串口标识,从相应的串口获取第二待比对数据;
确定所述串口控制指令超时,删除所述串口控制指令。
6.根据权利要求5所述的方法,其特征在于,
所述根据所述比对时间阈值,确定所述串口控制指令是否超时,包括:
记录接收到所述待比对串口标识的第一时间节点;
根据所述第一时间节点和所述时间阈值,确定第二时间节点;
在当前时刻到达所述第二时间节点前,确定所述串口控制指令不超时;
在当前时刻到达所述第二时间节点时,确定所述串口控制指令超时。
7.一种基于FPGA的串口控制指令处理方法,应用于上位机,其特征在于,包括:
采集数据文件和指令文件,所述数据文件包括:串口控制指令、串口标识和控制参数,所述指令文件包括控制逻辑;
根据所述数据文件和指令文件生成至少一个指令数据包,每一个所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;
根据所述数据文件中的串口标识,确定并行执行串口数量;
根据所述并行执行串口的数量,设置相同数量的数据通道,每一个所述数据通道对应一个所述串口标识;
根据各所述数据通道对应的指令数量和预设的传输速率,为各所述数据通道配置传输位宽;
通过各所述数据通道将所述指令数据发送给下位机的指令处理模块,所述指令处理模块与所述数据通道一一对应。
8.一种基于FPGA的串口控制指令处理方法,应用于下位机,其特征在于,包括:
指令处理模块接收所述上位机发送的指令数据包,所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;
各所述指令处理模块将所述指令数据包中的各所述指令数据分别存储在缓存上;
解析所述指令数据得到所述串口标识、所述串口控制指令和所述串口控制指令的控制信息;
各所述指令处理模块根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,所述数据处理模块与所述指令处理模块一一对应;
各所述数据处理模块根据所述控制信息,确定串口控制指令的发送方式;
各所述数据处理模块根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。
9.一种上位机,其特征在于,包括:采集模块、数据包生成模块、通道配置模块和发送模块;
所述采集模块用于采集数据文件和指令文件,所述数据文件包括:串口控制指令、串口标识和控制参数,所述指令文件包括控制逻辑;
所述数据包生成模块用于根据所述数据文件和指令文件生成至少一个指令数据包,每一个所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;
所述通道配置模块用于根据所述数据文件中的串口标识,确定并行执行串口数量;根据所述并行串口的数量,设置相同量数的数据通道,每一个所述数据通道对应一个所述串口标识;
所述发送模块用于通过各所述数据通道将所述指令数据发送给下位机的指令处理模块,所述指令处理模块与所述数据通道一一对应。
10.一种下位机,其特征在于,包括:至少一个指令处理模块和至少一个数据处理模块;
所述指令处理模块用于接收所述上位机发送的指令数据包,所述指令数据包包括:至少一个指令数据,每一个指令数据包括:所述串口标识、所述串口控制指令、所述串口控制指令的控制参数和所述串口控制指令的控制逻辑;将所述指令数据包中的各所述指令数据分别存储在缓存上;解析所述指令数据得到所述串口标识、所述串口控制指令和所述串口控制指令的控制信息;
各所述指令处理模块还用于根据所述串口标识,将各所述指令数据分配至至少一个数据处理模块中,所述数据处理模块与所述指令处理模块一一对应;
各所述数据处理模块用于根据所述控制信息,确定串口控制指令的发送方式;根据所述串口标识,以所述发送方式,将所述串口控制指令发至相应的串口。
CN202111102958.8A 2021-09-17 2021-09-17 一种基于fpga的串口控制指令处理方法以及上位机、下位机 Active CN113805514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111102958.8A CN113805514B (zh) 2021-09-17 2021-09-17 一种基于fpga的串口控制指令处理方法以及上位机、下位机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111102958.8A CN113805514B (zh) 2021-09-17 2021-09-17 一种基于fpga的串口控制指令处理方法以及上位机、下位机

Publications (2)

Publication Number Publication Date
CN113805514A true CN113805514A (zh) 2021-12-17
CN113805514B CN113805514B (zh) 2023-11-03

Family

ID=78896031

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111102958.8A Active CN113805514B (zh) 2021-09-17 2021-09-17 一种基于fpga的串口控制指令处理方法以及上位机、下位机

Country Status (1)

Country Link
CN (1) CN113805514B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739834A (zh) * 2008-11-13 2010-06-16 黑龙江大学 基于手势识别的多功能无线交警手势识别系统
US20120266212A1 (en) * 2010-02-10 2012-10-18 Zte Corporation Apparatus and method for authenticating smart card
CN109139115A (zh) * 2018-10-16 2019-01-04 煤炭科学技术研究院有限公司 一种井下数据采集终端、处理系统及处理方法
CN109542063A (zh) * 2018-11-21 2019-03-29 上海航天计算机技术研究所 一种综合接口控制设备及星载综合电子系统
CN110134036A (zh) * 2019-04-26 2019-08-16 深圳市龙控智能技术有限公司 一种串口数据采集轮询的方法、监控系统及存储介质
CN110736955A (zh) * 2019-10-28 2020-01-31 国网四川省电力公司电力科学研究院 一种计量器具显示功能在线批量检测系统及方法
CN112198835A (zh) * 2020-12-02 2021-01-08 江西联创光电超导应用有限公司 一种高温超导磁体运行数据的检测方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739834A (zh) * 2008-11-13 2010-06-16 黑龙江大学 基于手势识别的多功能无线交警手势识别系统
US20120266212A1 (en) * 2010-02-10 2012-10-18 Zte Corporation Apparatus and method for authenticating smart card
CN109139115A (zh) * 2018-10-16 2019-01-04 煤炭科学技术研究院有限公司 一种井下数据采集终端、处理系统及处理方法
CN109542063A (zh) * 2018-11-21 2019-03-29 上海航天计算机技术研究所 一种综合接口控制设备及星载综合电子系统
CN110134036A (zh) * 2019-04-26 2019-08-16 深圳市龙控智能技术有限公司 一种串口数据采集轮询的方法、监控系统及存储介质
CN110736955A (zh) * 2019-10-28 2020-01-31 国网四川省电力公司电力科学研究院 一种计量器具显示功能在线批量检测系统及方法
CN112198835A (zh) * 2020-12-02 2021-01-08 江西联创光电超导应用有限公司 一种高温超导磁体运行数据的检测方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李正东;周志强;袁学文;刘章文;: "变形镜驱动器控制电路的设计", 现代电子技术, no. 22 *

Also Published As

Publication number Publication date
CN113805514B (zh) 2023-11-03

Similar Documents

Publication Publication Date Title
US7660916B2 (en) Emulation of independent active DMA channels with a single DMA capable bus master hardware and firmware
US7680962B2 (en) Stream processor and information processing apparatus
EP4047882A1 (en) Operation control method and device, household electrical appliance, and storage medium
CN102662889B (zh) 中断处理方法、中断控制器及处理器
EP2353083A1 (en) Multi-core system with central transaction control
EP4191355A1 (en) Uds-based communication method, ecu and upper computer
CN101122334A (zh) 双离合器自动变速器的电控装置及控制方法
US20220061119A1 (en) Accelerating control procedures over ble connection oriented services
CN112804124A (zh) 一种针对时间敏感网络设备的测试床及测试方法
US20080270643A1 (en) Transfer system, initiator device, and data transfer method
CN113805514A (zh) 一种基于fpga的串口控制指令处理方法以及上位机、下位机
CN107734404B (zh) 基于fpga的波分设备电层保护实现系统及方法
CN108108473B (zh) 数据查询方法以及服务器
CN109145397A (zh) 一种支持并行流水访问的外存仲裁结构
CN110439701B (zh) 一种船用多缸柴油机电控系统及其喷油同步方法
LU101773B1 (en) Method for improving sequential read performance of solid-state drive
CN114687865B (zh) 一种fadec控制软件的状态机跟随方法
CN111240754B (zh) 一种在Linux内核中识别特定USB大容量存储设备的方法及系统
SU1550524A1 (ru) Устройство дл сопр жени процессора с внешним устройством
CN113934671B (zh) 一种接口控制芯片及网络设备
CN114513381B (zh) 基于af_xdp的实时以太网现场总线数据包处理方法
CN114546448B (zh) 一种车辆ota并行升级的方法和相关装置
CN112230572B (zh) 集成控制芯片及其控制方法,存储介质,车辆
CN114035912B (zh) 一种敏捷卫星数传元任务序列自主运行方法
CN113225161B (zh) 一种5g终端pdcch mimo检测加速器及设计方法

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
GR01 Patent grant
GR01 Patent grant