CN115145553A - 一种基于脚本语言开发驱动程序的数据处理方法 - Google Patents

一种基于脚本语言开发驱动程序的数据处理方法 Download PDF

Info

Publication number
CN115145553A
CN115145553A CN202210819597.7A CN202210819597A CN115145553A CN 115145553 A CN115145553 A CN 115145553A CN 202210819597 A CN202210819597 A CN 202210819597A CN 115145553 A CN115145553 A CN 115145553A
Authority
CN
China
Prior art keywords
data
layer
language
runtime
script
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
Application number
CN202210819597.7A
Other languages
English (en)
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.)
Hangzhou Diji Intelligent Technology Co ltd
Original Assignee
Hangzhou Diji Intelligent Technology Co ltd
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 Hangzhou Diji Intelligent Technology Co ltd filed Critical Hangzhou Diji Intelligent Technology Co ltd
Priority to CN202210819597.7A priority Critical patent/CN115145553A/zh
Publication of CN115145553A publication Critical patent/CN115145553A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种基于脚本语言开发驱动程序的数据处理方法,本申请通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。实现了从脚本语言入手,采用被掌握得最多的脚本语言来开发驱动程序,直接降低了驱动的开发门槛。解决了脚本语言不能用作驱动程序开发的一个弊端,使得掌握了脚本语言的开发人员,同样可以在驱动开发的场景下工作。

Description

一种基于脚本语言开发驱动程序的数据处理方法
技术领域
本公开涉及互联网技术领域,尤其涉及一种基于脚本语言开发驱动程序的数据处理方法、装置及数据处理系统。
背景技术
脚本语言是一种基于脚本语言开发驱动程序的数据处理方法编程语言,在一个特殊的运行时环境中,它可以自动执行任务,也可以由人工操作员一个接一个地执行。
而对于驱动程序而言,其本质是借助操作系统为平台,实现软件和硬件的数据交互。在现有技术下,要进行驱动程序的开发,需要使用C,C++等底层语言,而不能够使用更为通用的脚本语言,这使得对驱动开发的人才要求变高,对于企业的相关生产造成了较高成本。
而在通常情况下,驱动程序均是由底层语言(如C,C++等)而非脚本语言进行开发的,底层语言对于现今的技术环境而言,学习成本很高,不容易掌握,直接导致了在当前从互联网转向物联网的大时代里,由于设备的大量增加,引起了驱动开发人员的严重不足。到目前为止,还没有其他的以脚本语言作为驱动程序开发语言的解决方案。
发明内容
为了解决上述问题,本申请提出一种基于脚本语言开发驱动程序的数据处理方法、装置及数据处理系统。
本申请一方面,提出一种基于脚本语言开发驱动程序的数据处理方法,包括如下步骤:
通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;
配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;
接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;
所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。
作为本申请的一可选实施方案,可选地,通过预设编程语言,编写数据I/O层,包括:
预设开发环境和设计规则;
基于所述开发环境和设计规则,通过C语言编写I/O层代码;
根据所述I/O层代码生成所述数据I/O层,将所述数据I/O层配置在所述硬件设备的应用环境中。
作为本申请的一可选实施方案,可选地,配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接,包括:
基于脚本语言,编写脚本代码;
引入所述脚本代码所需的运行环境和对应的引用库,通过所述运行环境和所述引用库,构建所述脚本语言的运行时;
将所述脚本代码写入所述脚本语言的运行时,得到作为驱动程序的脚本语言应用程序,并将所述脚本语言应用程序与所述数据I/O层完成对接。
作为本申请的一可选实施方案,可选地,接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时,包括:
通过串口接收来自所述硬件设备的上报数据;
所述数据I/O层接收所述上报数据,并对所述上报数据进行读取,获得所述上报数据中的源数据;
将所述源数据发送并写入所述脚本语言的运行时,准备驱动执行,其中驱动执行的应用主体为所述脚本语言应用程序。
作为本申请的一可选实施方案,可选地,在接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时之前,还包括:
通过预设的C程序监听所述串口,并判断所述串口是否具有响应:若所述串口具有响应,则通过所述数据I/O层接收来自所述硬件设备的上报数据;
所述C程序读取所述上报数据,并将其作为驱动数据进行发送并写入所述脚本语言的运行时。
作为本申请的一可选实施方案,可选地,所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果,包括:
接收所述驱动数据;
通过所述脚本语言应用程序,从所述C程序中读取所述驱动数据并向所述C程序中写入数据,完成驱动数据处理,得到执行结果---数据变量;
将所述数据变量通过与所述脚本语言的运行时相对接的所述数据I/O层,返回至所述硬件设备。
本申请另一方面,提出一种实现所述的基于脚本语言开发驱动程序的数据处理方法的装置,包括:
数据I/O层构建模块,用于通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;
运行环境配置模块,用于配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;
数据上报模块,用于接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;
驱动执行模块,用于所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。
作为本申请的一可选实施方案,可选地,所述运行环境配置模块,包括:
脚本代码编写模块,用于基于脚本语言,编写脚本代码;
运行时搭建模块,用于引入所述脚本代码所需的运行环境和对应的引用库,通过所述运行环境和所述引用库,构建所述脚本语言的运行时;
脚本语言应用模块,用于将所述脚本代码写入所述脚本语言的运行时,得到作为驱动程序的脚本语言应用程序,并将所述脚本语言应用程序与所述数据I/O层完成对接。
作为本申请的一可选实施方案,可选地,所述数据上报模块,包括:
数据接收串口,用于通过串口接收来自所述硬件设备的上报数据;
读取模块,用于所述数据I/O层接收所述上报数据,并对所述上报数据进行读取,获得所述上报数据中的源数据;
驱动准备模块,用于将所述源数据发送并写入所述脚本语言的运行时,准备驱动执行,其中驱动执行的应用主体为所述脚本语言应用程序;
串口监听模块,用于通过预设的C程序监听所述串口,并判断所述串口是否具有响应:若所述串口具有响应,则通过所述数据I/O层接收来自所述硬件设备的上报数据;所述C程序读取所述上报数据,并将其作为驱动数据进行发送并写入所述脚本语言的运行时。
作为本申请的一可选实施方案,可选地,所述驱动执行模块,包括:
驱动数据处理模块,用于接收所述驱动数据;以及,通过所述脚本语言应用程序,从所述C程序中读取所述驱动数据并向所述C程序中写入数据,完成驱动数据处理,得到执行结果---数据变量;以及,将所述数据变量通过与所述脚本语言的运行时相对接的所述数据I/O层,返回至所述硬件设备。
本申请另一方面,还提出一种数据处理系统,包括:
处理器;
以及用于存储处理器可执行指令的存储器;
其中,处理器被配置为执行可执行指令时实现前面任一所述的一种基于脚本语言开发驱动程序的数据处理方法。
本发明的技术效果:
本申请通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。实现了从脚本语言入手,采用被掌握得最多的脚本语言来开发驱动程序,直接降低了驱动的开发门槛。解决了脚本语言不能用作驱动程序开发的一个弊端,使得掌握了脚本语言的开发人员,同样可以在驱动开发的场景下工作。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出为本发明于脚本语言开发驱动程序的数据处理方法的实施流程示意图;
图2示出为本发明采用脚本语言的运行时对驱动数据进行驱动处理时的执行流程示意图;
图3示出为本发明通过脚本语言应用程序进行数据读写的流程示意图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
实施例1
本发明在当前环境下,从脚本语言入手,采用被掌握得最多的脚本语言来开发驱动程序,直接降低了驱动的开发门槛。
本发明解决了脚本语言(本实施例中,特指javascript,python,groovy,kotlinscript等常用的脚本语言,偏门或是有严重时代滞后性的脚本语言不在此列)不能用作驱动程序开发的一个弊端,使得掌握了脚本语言的开发人员,同样可以在驱动开发的场景下工作。
本实施例中,脚本语言的运行时,为脚本代码/程序运行的环境,将根据用户自行选择的运行时条件进行选择,本实施例不对其做具体要求和限定。
如图1所示,本申请一方面,提出一种基于脚本语言开发驱动程序的数据处理方法,包括如下步骤:
S1、通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;
在本发明中,以C语言开发数据I/O层,该层仅用于对来自硬件的数据进行输入输出,并且该I/O层不对数据作任何处理,仅作传输用。上层引入完整的脚本语言的运行时,与I/O层进行数据的对接,确保在脚本语言内,可以接收到数据,以及发送数据。上层的脚本语言,可以是任意主流的脚本语言(如javascript,python等),只要它可以正常接收来自C层的数据,并且可以将数据发送给C层即可。
作为本申请的一可选实施方案,可选地,通过预设编程语言,编写数据I/O层,包括:
预设开发环境和设计规则;
基于所述开发环境和设计规则,通过C语言编写I/O层代码;
根据所述I/O层代码生成所述数据I/O层,将所述数据I/O层配置在所述硬件设备的应用环境中。
本申请首先需要基于C语言开发/编写I/O层代码,以此得到数据I/O层,通过生成的数据I/O层作为C程序的数据读取串口。因此,首先需要用户根据项目具体要求,作出开发环境和设计规则,便于开发代码,这里的开发环境和设计规则将根据用户如编程人员根据项目要求进行设定的。通过编码,得到C语言编写的I/O层代码,以此I/O层代码为基础,进行运行,得到数据I/O层,数据I/O层将作为对来自硬件的数据进行输入输出,并且该I/O层不对数据作任何处理,仅作传输用。上层引入完整的脚本语言的运行时,与I/O层进行数据的对接,确保在脚本语言内,可以接收到数据,以及发送数据。
本处的所述硬件设备的应用环境,指的是关联硬件设备在上报数据时,将加入的网络运行环境,硬件设备的数据需要通过串口传输至软件,并通过数据I/O层进行数据读取。
S2、配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;
C语言开发的数据I/O层,作为数据串口,用于读写数据,需要将其配置在脚本语言的运行时环境中,因此需要构建脚本代码所需的运行环境和对应的引用库,搭建在脚本语言的运行时环境中的运行条件,将所述脚本语言的运行时与所述数据I/O层进行连接,实现数据的读/写设计。
如图2所示,作为本申请的一可选实施方案,可选地,配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接,包括:
基于脚本语言,编写脚本代码;
引入所述脚本代码所需的运行环境和对应的引用库,通过所述运行环境和所述引用库,构建所述脚本语言的运行时;
将所述脚本代码写入所述脚本语言的运行时,得到作为驱动程序的脚本语言应用程序,并将所述脚本语言应用程序与所述数据I/O层完成对接。
开发人员编写脚本代码,并且引入脚本代码所需要的环境及引用库(这里的环境特指运行指定的脚本代码所必备的软件,如运行javascript需要nodejs等,引用库特指被脚本代码所使用的第三方依赖库),即通过所述运行环境和所述引用库,构建得到所述脚本语言的运行时环境。
因为脚本代码对应的是脚本驱动程序,因此当将所述脚本代码写入所述脚本语言的运行时,实际上已经构建得到在脚本语言的运行时环境中准备运行、驱动的脚本语言应用程序,将其和数据I/O层完成对接,即可准备对驱动数据进行驱动处理。
S3、接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;
当开始进驱动数据处理时,所述硬件设备的上报数据通过串口传输至软件端,通过数据I/O层进行数据读取/写入,其后通过驱动程序进行执行,得到执行结果并再次通过串口返回硬件设备。
作为本申请的一可选实施方案,可选地,接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时,包括:
通过串口接收来自所述硬件设备的上报数据;
所述数据I/O层接收所述上报数据,并对所述上报数据进行读取,获得所述上报数据中的源数据;
将所述源数据发送并写入所述脚本语言的运行时,准备驱动执行,其中驱动执行的应用主体为所述脚本语言应用程序。
本实施例,串口硬件设备,比如采集温度数据的设备,采集环境温度信息并上报,使用PC的屏幕作为信息展示的载体。则数据由硬件上报给串口,由串口而来的数据可以被C程序(即数据I/O层)所读取。
如图2所示,读取后,将数据传输至脚本语言的运行时中,采用所配置的所述脚本语言应用程序进行驱动数据处理,数据处理完毕,得到数据变量(驱动执行结果)。结果将通过C语言编写的数据I/O层再次发送至串口,并通过串口返回至硬件设备,实现了通过脚本语言应用程序对数据的驱动处理,从脚本语言入手,采用被掌握得最多的脚本语言来开发驱动程序,直接降低了驱动的开发门槛。
为了便于数据响应,本实施例还在数据由硬件上报给串口的同时,设置有监听程序,具体通过C程序监听串口,实现数据上报时的响应。
作为本申请的一可选实施方案,可选地,在接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时之前,还包括:
通过预设的C程序监听所述串口,并判断所述串口是否具有响应:若所述串口具有响应,则通过所述数据I/O层接收来自所述硬件设备的上报数据;
所述C程序读取所述上报数据,并将其作为驱动数据进行发送并写入所述脚本语言的运行时。
串口具有响应,即表明硬件设备上报数据,通过C程序(数据I/O层)读取由串口而来的数据。若是无响应,持续等待。
S4、所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。
在脚本语言的运行时环境中,其中配置的脚本语言应用程,将进行数据的驱动执行。
首先,需要用户用脚本语言如javascript,python等开发的应用(脚本语言应用程序),来读取C程序内的数据并加以展示,此时发生的动作为:开发人员编写脚本代码,并且引入脚本代码所需要的环境及引用库(这里的环境特指运行指定的脚本代码所必备的软件,如运行javascript需要nodejs等,引用库特指被脚本代码所使用的第三方依赖库),对于开发人员开发完毕的代码,采用本发明来进行代码的整合和代码生成,以使得脚本代码能按图3的方式组织到一起,从而实现从C程序内读取数据,或向C程序写入数据。
如图3所示,作为本申请的一可选实施方案,可选地,所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果,包括:
接收所述驱动数据;
通过所述脚本语言应用程序,从所述C程序中读取所述驱动数据并向所述C程序中写入数据,完成驱动数据处理,得到执行结果---数据变量;
将所述数据变量通过与所述脚本语言的运行时相对接的所述数据I/O层,返回至所述硬件设备。
脚本语言应用程序,在执行驱动数据处理时,首先从C程序内读取数据,再向C程序写入数据,最下方的共享的读写数据内存,由C程序开辟,并且允许上层的脚本程序读写。
此时即可以对数据变量进行展示,由任意技术读取该数据变量,并展示到屏幕即可。同时由开发人员所编写的脚本代码也可以进行打包,打包的产物为脚本代码与C程序的集合,直接放到另一个电脑环境内解压即可使用。
本实施例中,脚本语言由于带上了各自的运行时,因此在开发上不受限制,可以使用开发者原本对语言的理解,对库的运用,从而进行开发。只需要在最终打包时,将使用C开发的I/O层代码同时打包即可。
因此,本申请通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。实现了从脚本语言入手,采用被掌握得最多的脚本语言来开发驱动程序,直接降低了驱动的开发门槛。解决了脚本语言不能用作驱动程序开发的一个弊端,使得掌握了脚本语言的开发人员,同样可以在驱动开发的场景下工作。
需要说明的是,尽管以作为示例介绍了如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据实际应用场景灵活设定,只要可以按照上述技术方法实现本申请的技术功能即可。
实施例2
基于实施例1的实施原理,本实施例,本申请另一方面,提出一种实现所述的基于脚本语言开发驱动程序的数据处理方法的装置,包括:
数据I/O层构建模块,用于通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;
运行环境配置模块,用于配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;
数据上报模块,用于接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;
驱动执行模块,用于所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。
作为本申请的一可选实施方案,可选地,所述运行环境配置模块,包括:
脚本代码编写模块,用于基于脚本语言,编写脚本代码;
运行时搭建模块,用于引入所述脚本代码所需的运行环境和对应的引用库,通过所述运行环境和所述引用库,构建所述脚本语言的运行时;
脚本语言应用模块,用于将所述脚本代码写入所述脚本语言的运行时,得到作为驱动程序的脚本语言应用程序,并将所述脚本语言应用程序与所述数据I/O层完成对接。
作为本申请的一可选实施方案,可选地,所述数据上报模块,包括:
数据接收串口,用于通过串口接收来自所述硬件设备的上报数据;
读取模块,用于所述数据I/O层接收所述上报数据,并对所述上报数据进行读取,获得所述上报数据中的源数据;
驱动准备模块,用于将所述源数据发送并写入所述脚本语言的运行时,准备驱动执行,其中驱动执行的应用主体为所述脚本语言应用程序;
串口监听模块,用于通过预设的C程序监听所述串口,并判断所述串口是否具有响应:若所述串口具有响应,则通过所述数据I/O层接收来自所述硬件设备的上报数据;所述C程序读取所述上报数据,并将其作为驱动数据进行发送并写入所述脚本语言的运行时。
作为本申请的一可选实施方案,可选地,所述驱动执行模块,包括:
驱动数据处理模块,用于接收所述驱动数据;以及,通过所述脚本语言应用程序,从所述C程序中读取所述驱动数据并向所述C程序中写入数据,完成驱动数据处理,得到执行结果---数据变量;以及,将所述数据变量通过与所述脚本语言的运行时相对接的所述数据I/O层,返回至所述硬件设备。
上述各个模块的具体实现原理和功能,具体参见实施例1的描述,本实施例不再详赘。
显然,本领域的技术人员应该明白,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各控制方法的实施例的流程。上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各控制方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)、随机存储记忆体(RandomAccessMemory,RAM)、快闪存储器(FlashMemory)、硬盘(HardDiskDrive,缩写:HDD)或固态硬盘(Solid-StateDrive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
实施例3
更进一步地,本申请另一方面,还提出一种数据处理系统,包括:
处理器;
以及用于存储处理器可执行指令的存储器;
其中,处理器被配置为执行可执行指令时实现前面任一所述的一种基于脚本语言开发驱动程序的数据处理方法。
本公开实施例来数据处理系统包括处理器以及用于存储处理器可执行指令的存储器。其中,处理器被配置为执行可执行指令时实现前面任一所述的一种基于脚本语言开发驱动程序的数据处理方法。
此处,应当指出的是,处理器的个数可以为一个或多个。同时,在本公开实施例的数据处理系统中,还可以包括输入装置和输出装置。其中,处理器、存储器、输入装置和输出装置之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。
存储器作为一计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本公开实施例的一种基于脚本语言开发驱动程序的数据处理方法所对应的程序或模块。处理器通过运行存储在存储器中的软件程序或模块,从而执行数据处理系统的各种功能应用及数据处理。
输入装置可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置可以包括显示屏等显示设备。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种基于脚本语言开发驱动程序的数据处理方法,其特征在于,包括如下步骤:
通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;
配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;
接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;
所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。
2.根据权利要求1所述的一种基于脚本语言开发驱动程序的数据处理方法,其特征在于,通过预设编程语言,编写数据I/O层,包括:
预设开发环境和设计规则;
基于所述开发环境和设计规则,通过C语言编写I/O层代码;
根据所述I/O层代码生成所述数据I/O层,将所述数据I/O层配置在所述硬件设备的应用环境中。
3.根据权利要求1所述的一种基于脚本语言开发驱动程序的数据处理方法,其特征在于,配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接,包括:
基于脚本语言,编写脚本代码;
引入所述脚本代码所需的运行环境和对应的引用库,通过所述运行环境和所述引用库,构建所述脚本语言的运行时;
将所述脚本代码写入所述脚本语言的运行时,得到作为驱动程序的脚本语言应用程序,并将所述脚本语言应用程序与所述数据I/O层完成对接。
4.根据权利要求3所述的一种基于脚本语言开发驱动程序的数据处理方法,其特征在于,接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时,包括:
通过串口接收来自所述硬件设备的上报数据;
所述数据I/O层接收所述上报数据,并对所述上报数据进行读取,获得所述上报数据中的源数据;
将所述源数据发送并写入所述脚本语言的运行时,准备驱动执行,其中驱动执行的应用主体为所述脚本语言应用程序。
5.根据权利要求4所述的一种基于脚本语言开发驱动程序的数据处理方法,其特征在于,在接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时之前,还包括:
通过预设的C程序监听所述串口,并判断所述串口是否具有响应:若所述串口具有响应,则通过所述数据I/O层接收来自所述硬件设备的上报数据;
所述C程序读取所述上报数据,并将其作为驱动数据进行发送并写入所述脚本语言的运行时。
6.根据权利要求5所述的一种基于脚本语言开发驱动程序的数据处理方法,其特征在于,所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果,包括:
接收所述驱动数据;
通过所述脚本语言应用程序,从所述C程序中读取所述驱动数据并向所述C程序中写入数据,完成驱动数据处理,得到执行结果---数据变量;
将所述数据变量通过与所述脚本语言的运行时相对接的所述数据I/O层,返回至所述硬件设备。
7.一种实现权利要求1-6中任一项所述的基于脚本语言开发驱动程序的数据处理方法的装置,其特征在于,包括:
数据I/O层构建模块,用于通过预设编程语言,编写数据I/O层,其中,所述数据I/O层用于对来自硬件设备的数据进行输入/输出;
运行环境配置模块,用于配置脚本语言的运行时,并将所述脚本语言的运行时与所述数据I/O层进行连接;
数据上报模块,用于接收来自所述硬件设备的上报数据,并通过所述数据I/O层将所述上报数据发送至所述脚本语言的运行时;
驱动执行模块,用于所述脚本语言的运行时接收上报数据并进行数据处理,返回执行结果。
8.根据权利要求7所述的装置,其特征在于,所述运行环境配置模块,包括:
脚本代码编写模块,用于基于脚本语言,编写脚本代码;
运行时搭建模块,用于引入所述脚本代码所需的运行环境和对应的引用库,通过所述运行环境和所述引用库,构建所述脚本语言的运行时;
脚本语言应用模块,用于将所述脚本代码写入所述脚本语言的运行时,得到作为驱动程序的脚本语言应用程序,并将所述脚本语言应用程序与所述数据I/O层完成对接。
9.根据权利要求7所述的装置,其特征在于,所述数据上报模块,包括:
数据接收串口,用于通过串口接收来自所述硬件设备的上报数据;
读取模块,用于所述数据I/O层接收所述上报数据,并对所述上报数据进行读取,获得所述上报数据中的源数据;
驱动准备模块,用于将所述源数据发送并写入所述脚本语言的运行时,准备驱动执行,其中驱动执行的应用主体为所述脚本语言应用程序;
串口监听模块,用于通过预设的C程序监听所述串口,并判断所述串口是否具有响应:若所述串口具有响应,则通过所述数据I/O层接收来自所述硬件设备的上报数据;所述C程序读取所述上报数据,并将其作为驱动数据进行发送并写入所述脚本语言的运行时。
10.根据权利要求9所述的装置,其特征在于,所述驱动执行模块,包括:
驱动数据处理模块,用于接收所述驱动数据;以及,通过所述脚本语言应用程序,从所述C程序中读取所述驱动数据并向所述C程序中写入数据,完成驱动数据处理,得到执行结果---数据变量;以及,将所述数据变量通过与所述脚本语言的运行时相对接的所述数据I/O层,返回至所述硬件设备。
CN202210819597.7A 2022-07-12 2022-07-12 一种基于脚本语言开发驱动程序的数据处理方法 Pending CN115145553A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210819597.7A CN115145553A (zh) 2022-07-12 2022-07-12 一种基于脚本语言开发驱动程序的数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210819597.7A CN115145553A (zh) 2022-07-12 2022-07-12 一种基于脚本语言开发驱动程序的数据处理方法

Publications (1)

Publication Number Publication Date
CN115145553A true CN115145553A (zh) 2022-10-04

Family

ID=83411928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210819597.7A Pending CN115145553A (zh) 2022-07-12 2022-07-12 一种基于脚本语言开发驱动程序的数据处理方法

Country Status (1)

Country Link
CN (1) CN115145553A (zh)

Similar Documents

Publication Publication Date Title
CN109697060B (zh) 视频特效系统及其生成方法、装置、设备和存储介质
CN110134386B (zh) 一种程序编辑方法和装置
US5652869A (en) System for executing and debugging multiple codes in a multi-architecture environment using jacketing means for jacketing the cross-domain calls
CN107832059B (zh) 一种基于Makefile的代码静态分析方法和装置
US20130298110A1 (en) Software Visualization Using Code Coverage Information
EP1906275B1 (en) Natively retaining project documentation in a controller
IE60444B1 (en) A software verification apparatus
CN114791885A (zh) 接口测试方法、装置、设备及介质
KR20190078681A (ko) 인공신경망 학습/시뮬레이션 시스템 및 방법
CN113032248A (zh) 安卓系统的应用调试方法、装置、存储介质及电子设备
CN112988588A (zh) 客户端软件调试方法、装置、存储介质及电子设备
CN110765008B (zh) 一种数据处理方法及装置
US20230315613A1 (en) Method and system for eradicating programmatical errors from engineering programs in a technical installation
CN115145553A (zh) 一种基于脚本语言开发驱动程序的数据处理方法
CN113342702B (zh) 一种应用程序测试方法、装置、设备及可读存储介质
CN112506871B (zh) 自动化任务管理及日志管理方法、系统、电子设备和介质
CN112765018B (zh) 一种仪器仪表调试系统及方法
CN115542878A (zh) 基于控制器仿真虚拟化测试方法、系统、设备及介质
Poole Debugging and testing
US11256479B2 (en) Dynamic updates in an interactive programming environment
CN112214412B (zh) 一种测试报告的生成方法和装置
CN114035864A (zh) 接口处理方法、接口处理装置、电子设备和存储介质
CN113986263A (zh) 代码自动化测试方法、装置、电子设备、存储介质
EP3734491A1 (en) Method, apparatus, device, and medium for implementing simulator
CN112306844A (zh) 软件开发系统的接口测试方法、装置、设备及存储介质

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