一种串口数据分发方法、装置、设备、介质制造方法及图纸

技术编号:25521492 阅读:20 留言:0更新日期:2020-09-04 17:11
本申请公开了一种串口数据分发方法、装置、设备、介质,该方法包括:获取待分发的串口数据;对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号;根据所述功能号将所述串口数据分发到对应的应用程序。由此可见,本申请在对获取到的串口数据进行处理,得到所述串口数据的功能号之后,便可以按照所述串口数据的功能号将所述串口数据分发到对应的应用程序,这样能够减小程序之间的耦合性,便于移植,且串口数据的分发工作在驱动层完成,即使系统资源紧张,也不会把驱动Kill掉,提高了系统的可靠性,直接按照串口数据的功能号将串口数据分发给相应的应用程序,减小了系统开销,提高了数据分发效率。

【技术实现步骤摘要】
一种串口数据分发方法、装置、设备、介质
本申请涉及数据处理
,特别涉及一种串口数据分发方法、装置、设备、介质。
技术介绍
计算机系统会将一些对实时性要求较高的设备挂在MCU(MicrocontrollerUnit,微控制单元)上,由MCU控制这些外设,并将各个外设的数据通过串口发送给主CPU(CentralProcessingUnit,中央处理器),通常是跑LINUX系统的ARMCPU,由Linux系统进行处理,并将对外设的控制命令,通过串口发送给MCU,由MCU的实际去控制外设。针对这种架构,通常的做法是,在Linux应用层设置一个串口解析模块作为一个服务进程或者线程,负责解析串口数据,并将数据分发给各个功能模块处理。在这种情况下,程序的耦合性大,每一个功能模块都必须依赖串口解析模块,如果串口解析模块不工作,则每一个功能模块都无法工作;且串口解析模块工作在应用层,可靠性和优先级肯定低于驱动层,当系统资源紧张时,通常会导致串口解析模块先被系统kill掉,从而导致其他功能模块不工作;此外在串口解析模块分发数据的时候,必然导致进程或者线程间的切换,系统开销大,效率低。
技术实现思路
有鉴于此,本申请的目的在于提供一种串口数据分发方法、装置、设备、介质,能够减小程序之间的耦合性,便于移植,且提高了系统的可靠性,减小了系统开销,提高了数据分发效率。其具体方案如下:第一方面,本申请公开了一种串口数据分发方法,包括:获取待分发的串口数据;对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号;根据所述功能号将所述串口数据分发到对应的应用程序。可选地,所述对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号,包括:利用驱动层的线路规程对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号。可选地,所述利用驱动层的线路规程对所述串口数据进行处理之前,还包括:在主CPU的驱动层上部署串口驱动,以便形成所述线路规程,其中,所述主CPU为运行系统的CPU。可选地,所述串口数据分发方法,还包括:通过所述应用程序对串口进行访问操作。可选地,所述通过所述应用程序对串口进行访问操作,包括:通过应用程序对所述串口进行开启操作;和/或,通过应用程序对所述串口进行数据写入操作;和/或,通过应用程序对所述串口进行数据读取操作;和/或,通过应用程序对所述串口进行关闭操作;和/或,通过应用程序对所述串口进行poll操作。可选地,所述通过应用程序对所述串口进行开启操作的过程中,包括:在检测到有新应用程序开启所述串口时,调用预设分配函数为所述新应用程序分配控制数据结构,以便利用所述控制数据结构对所述新应用程序对应的串口数据进行处理。可选地,所述获取待分发的串口数据之前,还包括:为各个所述应用程序注册对应的功能号,以便根据所述功能号确定所述串口数据是否属于对应的所述应用程序。第二方面,本申请公开了一种串口数据分发装置,包括:数据获取模块,用于获取待分发的串口数据;数据处理模块,用于对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号;数据分发模块,用于根据所述功能号将所述串口数据分发到对应的应用程序。可选地,所述数据处理模块,具体用于利用驱动层的线路规程对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号。可选地,所述串口数据分发方法,还包括:驱动部署模块,用于在主CPU的驱动层上部署串口驱动,以便形成所述线路规程,其中,所述主CPU为运行系统的CPU。可选地,所述串口数据分发装置,还包括:访问模块,用于通过所述应用程序对串口进行访问操作。可选地,所述访问模块,具体用于:通过应用程序对所述串口进行开启操作;和/或,通过应用程序对所述串口进行数据写入操作;和/或,通过应用程序对所述串口进行数据读取操作;和/或,通过应用程序对所述串口进行关闭操作;和/或,通过应用程序对所述串口进行poll操作。可选地,所述串口数据分发装置,还包括:数据结构分配模块,用于在检测到有新应用程序开启所述串口时,调用预设分配函数为所述新应用程序分配控制数据结构,以便利用所述控制数据结构对所述新应用程序对应的串口数据进行处理。可选地,所述串口数据分发装置,还包括:功能号注册模块,用于为各个所述应用程序注册对应的功能号,以便根据所述功能号确定所述串口数据是否属于对应的所述应。第三方面,本申请公开了一种串口数据分发设备,包括:存储器和处理器;其中,所述存储器,用于存储计算机程序;所述处理器,用于执行所述计算机程序,以实现前述公开的串口数据分发方法。第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的串口数据分发方法。可见,本申请先获取待分发的串口数据,然后对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号,再根据所述功能号将所述串口数据分发到对应的应用程序。由此可见,本申请在对获取到的串口数据进行处理,得到所述串口数据的功能号之后,便可以按照所述串口数据的功能号将所述串口数据分发到对应的应用程序,这样能够减小程序之间的耦合性,便于移植,且串口数据的分发工作在驱动层完成,即使系统资源紧张,也不会把驱动Kill掉,提高了系统的可靠性,直接按照串口数据的功能号将串口数据分发给相应的应用程序,减小了系统开销,提高了数据分发效率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请公开的一种串口数据分发方法流程图;图2为本申请公开的一种具体的串口数据分发方法流程图;图3为本申请公开的一种串口数据分发原理示意图;图4为本申请公开的一种串口数据分发装置结构示意图;图5为本申请公开的一种串口数据分发设备结构图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。参见图1所示,本申请实施例公开了一种串口数据分发方法,该方法包括:步骤S11:获取待分发的串口数据。在具体的实施过程中,需要先获取待分发给应用程序的串口数据,以便将所述串口数据分发给相应的应用程序进行处理,其中,所述应用程序为串口对应本文档来自技高网...

【技术保护点】
1.一种串口数据分发方法,其特征在于,包括:/n获取待分发的串口数据;/n对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号;/n根据所述功能号将所述串口数据分发到对应的应用程序。/n

【技术特征摘要】
1.一种串口数据分发方法,其特征在于,包括:
获取待分发的串口数据;
对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号;
根据所述功能号将所述串口数据分发到对应的应用程序。


2.根据权利要求1所述的串口数据分发方法,其特征在于,所述对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号,包括:
利用驱动层的线路规程对所述串口数据进行处理,以便从所述串口数据中确定出所述串口数据对应的功能号。


3.根据权利要求2所述的串口数据分发方法,其特征在于,所述利用驱动层的线路规程对所述串口数据进行处理之前,还包括:
在主CPU的驱动层上部署串口驱动,以便形成所述线路规程,其中,所述主CPU为运行系统的CPU。


4.根据权利要求1所述的串口数据分发方法,其特征在于,还包括:
通过所述应用程序对串口进行访问操作。


5.根据权利要求4所述的串口数据分发方法,其特征在于,所述通过所述应用程序对串口进行访问操作,包括:
通过应用程序对所述串口进行开启操作;
和/或,通过应用程序对所述串口进行数据写入操作;
和/或,通过应用程序对所述串口进行数据读取操作;
和/或,通过应用程序对所述串口进行关闭操作;
和/或,通过应用程序对所述串口进行p...

【专利技术属性】
技术研发人员:刘均李森
申请(专利权)人:深圳市元征科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1