串口数据的过滤系统和方法

文档序号:9417323阅读:1091来源:国知局
串口数据的过滤系统和方法
【技术领域】
[0001]本发明涉及串口通信技术领域,特别是一种串口数据的过滤系统和方法。
【背景技术】
[0002]串口总线是用一对简单的双绞线的通信方式,这种方式使用的数据线少,在远距离通信中可以节约通信成本,可连入计算机,实现多点、双向通信和数据采集,设备简单,价格低廉,它具有噪声抑制能力、比较高的数据传输速率和可靠性。正因如此,串口总线系统在工业数据采集与控制、仪器仪表、汽车电子、电信设备等领域得到广泛应用。使用串行接口来连接测量与自动化设备,摆脱了对计算机内部ISA(Industrial StandardArchitecture,工业标准结构总线)或PCI (Peripheral Component Interconnect1n,周边元件扩展接口)插槽的额外硬件要求。
[0003]随着行业变化,市场的新需求不断出现,为快速适应市场的需求变化,工业设备具有一定的独立性,能方便地与其它工业设备进行协同工作,使得各个工业设备有机合理组织构建一个完整的系统,进而快速响应市场变化。基于串口上的通信的工业设备变成开放式的硬件架构,加快了产品的市场投放时间,因此基于串口协议开发日益变得重要。
[0004]现有技术中,基于串口上开发的通信协议需要用到示波器或者应用程序记录日志来定位分析通信问题。一方面,一些专业昂贵的示波器会加大开发的成本。另一方面,使用应用程序记录日志的方式虽然简单,但是缺乏统一标准,不同的开发版本之间因为格式问题以及日志程序体系结构的演变,会导致多版本归并维护困难。目前,应用程序串口日志代码到处复制粘贴,不断重复开发的日志功能,加大软件的维护成本,导致软件开发的稳定性较差。因此,亟待提供一种有效地方式来实现串口数据的监控。

【发明内容】

[0005]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的串口数据的过滤系统和相应的方法。
[0006]依据本发明的一方面,提供了一种串口数据的过滤系统,应用于过滤业务应用程序与串口硬件设备间的通信数据的情况,包括:可配置文件模块、应用调用接口以及串口过滤模块,其中,
[0007]所述可配置文件模块,用于配置对串口数据进行处理的用户态过滤规则,并存储至可配置文件;
[0008]所述应用调用接口,用于从所述可配置文件模块中提取所述可配置文件,并发送至所述串口过滤模块;
[0009]所述串口过滤模块,用于接收所述可配置文件,并将其进行存储;以及
[0010]接收所述业务应用程序将要发送给所述串口硬件设备的第一数据,调用存储的可配置文件,使用所述可配置文件中配置的用户态过滤规则对所述第一数据进行过滤,得到过滤后的第一数据,向所述串口硬件设备发送所述过滤后的第一数据;和/或
[0011]接收所述串口硬件设备将要发送给所述业务应用程序的第二数据,调用存储的可配置文件,使用所述可配置文件中配置的用户态过滤规则对所述第二数据进行过滤,得到过滤后的第二数据,向所述业务应用程序发送所述过滤后的第二数据。
[0012]可选地,所述系统还包括用于记录数据变化的日志模块,其中,
[0013]所述串口过滤模块,还用于在针对所述第一数据和/或所述第二数据的过滤操作结束时,发送可记录日志的通知消息至所述应用调用接口 ;
[0014]所述应用调用接口,还用于接收所述通知消息,调用所述日志模块对所述过滤后的第一数据和/或所述过滤后的第二数据进行记录;
[0015]所述日志模块,用于对所述过滤后的第一数据和/或所述过滤后的第二数据进行曰志记录。
[0016]可选地,所述串口过滤模块还用于:
[0017]在其自身初始化时,探测所述串口硬件设备,在所述串口硬件设备对应的串口设备驱动出入口处添加函数钩子,以在所述串口设备驱动被调用时,接收所述业务应用程序将要发送给所述串口硬件设备的第一数据或者接收所述串口硬件设备将要发送给所述业务应用程序的第二数据。
[0018]可选地,所述串口过滤模块建立在操作系统的内核中,与操作系统内核中的TTY设备驱动框架连接,其中,所述TTY设备驱动框架用于对操作系统连接的串口硬件设备对应的串口设备驱动进行管理和分配。
[0019]可选地,所述串口过滤模块还用于:
[0020]当所述TTY设备驱动框架接收所述业务应用程序将要发送给所述串口硬件设备的第一数据时,接收所述TTY设备驱动框架发送的所述第一数据。
[0021]可选地,所述串口过滤模块还用于:
[0022]将所述过滤后的第二数据发送给所述TTY设备驱动框架,以由所述TTY设备驱动框架将所述过滤后的第二数据传送给所述业务应用程序。
[0023]可选地,所述串口过滤模块还用于:
[0024]将所述过滤后的第一数据发送给所述串口硬件设备对应的串口设备驱动,以由所述串口设备驱动调用命令寄存器,将所述过滤后的第一数据发送给所述串口硬件设备。
[0025]可选地,所述串口过滤模块还用于:
[0026]在所述串口硬件设备对应的串口设备驱动调用命令寄存器,获取所述串口硬件设备将要发送给所述业务应用程序的第二数据时,接收所述串口设备驱动发送的所述第二数据。
[0027]依据本发明的另一方面,还提供了一种串口数据的过滤方法,应用于过滤业务应用程序与串口硬件设备间的通信数据的情况,包括:
[0028]可配置文件模块配置对串口数据进行处理的用户态过滤规则,并存储至可配置文件;
[0029]应用调用接口从所述可配置文件模块中提取所述可配置文件,并发送至串口过滤丰吴块;
[0030]所述串口过滤模块接收所述可配置文件,并将所述可配置文件进行存储;以及
[0031]所述串口过滤模块接收所述业务应用程序将要发送给所述串口硬件设备的第一数据,调用存储的可配置文件,使用所述可配置文件中配置的用户态过滤规则对所述第一数据进行过滤,得到过滤后的第一数据,向所述串口硬件设备发送所述过滤后的第一数据;和/或
[0032]接收所述串口硬件设备将要发送给所述业务应用程序的第二数据,调用存储的可配置文件,使用所述可配置文件中配置的用户态过滤规则对所述第二数据进行过滤,得到过滤后的第二数据,向所述业务应用程序发送所述过滤后的第二数据。
[0033]可选地,所述方法还包括:
[0034]在针对所述第一数据和/或所述第二数据的过滤操作结束时,所述串口过滤模块发送可记录日志的通知消息至所述应用调用接口;
[0035]所述应用调用接口接收所述通知消息,调用日志模块对所述过滤后的第一数据和/或所述过滤后的第二数据进行记录。
[0036]可选地,所述方法还包括:
[0037]所述串口过滤模块在其自身初始化时,探测所述串口硬件设备,在所述串口硬件设备对应的串口设备驱动出入口处添加函数钩子,以在所述串口设备驱动被调用时,接收所述业务应用程序将要发送给所述串口硬件设备的第一数据或者接收所述串口硬件设备将要发送给所述业务应用程序的第二数据。
[0038]可选地,所述方法还包括:
[0039]将所述串口过滤模块建立在操作系统的内核中,与操作系统内核中的TTY设备驱动框架连接,其中,所述TTY设备驱动框架用于对操作系统连接的串口硬件设备对应的串口设备驱动进行管理和分配。
[0040]可选地,所述串口过滤模块接收所述业务应用程序将要发送给所述串口硬件设备的第一数据,包括:
[0041]由所述TTY设备驱动框架接收所述业务应用程序将要发送给所述串口硬件设备的第一数据,并将所述第一数据发送给所述串口过滤模块;
[0042]所述串口过滤模块接收所述TTY设备驱动框架发送的所述第一数据。
[0043]可选地,所述串口过滤模块向所述业务应用程序发送所述过滤后的第二数据,包括:
[0044]所述串口过滤模块将所述过滤后的第二数据发送给所述TTY设备驱动框架;
[0045]由所述TTY设备驱动框架将所述过滤后的第二数据传送给所述业务应用程序。
[0046]可选地,所述串口过滤模块向所述串口硬件设备发送所述过滤后的第一数据,包括:
[0047]所述串口过滤模块将所述过滤后的第一数据发送给所述串口硬件设备对应的串口设备驱动;
[0048]由所述串口设备驱动调用命令寄存器,将所述过滤后的第一数据发送给所述串口硬件设备。
[0049]可选地,所述串口过滤模块接收所述串口硬件设备将要发送给所述业务应用程序的第二数据,包括:
[0050]由所述串口硬件设备对应的串口设备驱动调用命令寄存器,获取所述串口硬件设备将要发送给所述业务应用程序的第二数据,并将所述第二数据传递给所述串口过滤模块;
[0051]所述串口过滤模块接收所述串口设备驱动发送的所述第二数据。
[0052]本发明提供的串口数据的过滤系统和方法,实现了统一化、标准化的串口数据处理的目的。该串口数据的过滤系统包括了可配置文件模块,能够统一、灵活地配置对串口数据进行处理的用户态过滤规则,并存储至可配置文件。随后由应用调用接口从可配置文件模块中提取可配置文件,并发送至串口过滤模块。进而,串口过滤模块接收可配置文件并将其进行存储,当接收到业务应用程序将要发送给串口硬件设备的第一数据时,调用存储的可配置文件,使用可配置文件中配置的用户态过
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1