一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

通信框架、业务事件处理方法及装置与流程

2021-10-22 22:36:00 来源:中国专利 TAG:框架 装置 事件 通信 业务


1.本技术涉及电子技术领域,尤其涉及一种通信框架、业务事件处理方法及装置。


背景技术:

2.在嵌入式领域,实时操作系统(real time operating system,rtos)的应用非常广泛,rtos是保证在一定时间限制内完成特定功能的操作系统。目前,rtos中的功能模块耦合严重,影响rtos的通信性能。因此,为rtos提供一种通用的通信框架是很有必要的。


技术实现要素:

3.本技术实施例提供一种通信框架、业务事件处理方法及装置。
4.第一方面,本技术实施例提供一种通信框架,应用于电子设备,所述通信框架包括应用接口模块、服务模块和底层驱动模块;
5.所述服务模块用于处理业务事件;
6.所述服务模块通过所述底层驱动模块与所述电子设备的通信接口进行交互;
7.所述服务模块通过所述应用接口模块与所述电子设备中的应用进行交互。
8.第二方面,本技术实施例提供一种业务事件处理方法,应用于第一方面所述的通信框架中的服务模块,所述方法包括:
9.接收应用接口模块或底层驱动模块发送的交互信息,以及基于所述交互信息处理业务事件。
10.第三方面,本技术实施例提供一种业务事件处理装置,应用于第一方面所述的通信框架中的服务模块,所述装置包括:
11.接收单元,用于接收应用接口模块或底层驱动模块发送的交互信息;
12.事件处理单元,用于基于所述交互信息处理业务事件。
13.第四方面,本技术实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述处理器包括第一方面所述的通信框架中的服务模块,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本技术实施例第二方面中的步骤的指令。
14.第五方面,本技术实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本技术实施例第二方面中所描述的部分或全部步骤。
15.第六方面,本技术实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本技术实施例第二方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
16.可以看出,在本技术实施例中,电子设备包括的通信框架有应用接口模块、服务模块和底层驱动模块,服务模块用于处理业务事件,服务模块通过底层驱动模块与电子设备
的通信接口进行交互,服务模块通过应用接口模块与电子设备中的应用进行交互,实现了统一应用接口、统一通信接口、以及业务事件统一在一个模块中处理,避免了功能模块耦合严重的问题,达到了为系统提供通用的通信框架的目的。
附图说明
17.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1是本技术实施例提供的一种电子设备的结构示意图;
19.图2是本技术实施例提供的一种电子设备的软件结构示意图;
20.图3是本技术实施例提供的一种电子设备的系统框图;
21.图4是本技术实施例提供的一种通信框架的结构示意图;
22.图5是本技术实施例提供的另一种通信框架的结构示意图;
23.图6是本技术实施例提供的一种业务事件处理方法的流程示意图;
24.图7是本技术实施例提供的一种建立链接方法的流程示意图;
25.图8是本技术实施例提供的另一种建立链接方法的流程示意图;
26.图9是本技术实施例提供的一种断开链接方法的流程示意图;
27.图10是本技术实施例提供的另一种断开链接方法的流程示意图;
28.图11是本技术实施例提供的一种报文发送方法的流程示意图;
29.图12是本技术实施例提供的一种报文接收方法的流程示意图;
30.图13是本技术实施例提供的一种业务事件处理装置的结构示意图。
具体实施方式
31.下面将结合附图,对本技术实施例中的技术方案进行描述。
32.为了更好地理解本技术实施例的方案,下面先对本技术实施例可能涉及的相关术语和概念进行介绍。
33.1)电子设备可以是还包含其它功能诸如个人数字助理和/或音乐播放器功能的便携式电子设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴电子设备(如智能手表)等。便携式电子设备的示例性实施例包括但不限于搭载ios系统、android系统、microsoft系统或者其它操作系统的便携式电子设备。上述便携式电子设备也可以是其它便携式电子设备,诸如膝上型计算机(laptop)等。还应当理解的是,在其他一些实施例中,上述电子设备也可以不是便携式电子设备,而是台式计算机。
34.2)报文指的是发送方要发送的数据块,报文包含了将要发送的完整的数据信息。
35.3)链表指的是一种物理存储单元上非连续、非顺序的存储结构。链表由一系列节点(链表中每一个数据元素称为节点)组成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。
36.4)at指令是应用于电子设备与应用之间的连接与通信的指令,at即attention。
37.第一部分,本技术所公开的技术方案的软硬件运行环境介绍如下。
38.示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110、外部存储器接口120、内部存储器121、通用串行总线(universal serial bus,usb)接口130、充电管理模块140、电源管理模块141、电池142、天线1、天线2、移动通信模块150、无线通信模块160、音频模块170、扬声器170a、受话器170b、麦克风170c、耳机接口170d、传感器模块180、指南针190、马达191、指示器192、摄像头193、显示屏194以及用户标识模块(subscriber identification module,sim)卡接口195等。
39.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
40.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的部件,也可以集成在一个或多个处理器中。在一些实施例中,电子设备101也可以包括一个或多个处理器110。其中,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。在其他一些实施例中,处理器110中还可以设置存储器,用于存储指令和数据。示例性地,处理器110中的存储器可以为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。这样就避免了重复存取,减少了处理器110的等待时间,因而提高了电子设备101处理数据或执行指令的效率。
41.在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路间(inter-integrated circuit,i2c)接口、集成电路间音频(inter-integrated circuit sound,i2s)接口、脉冲编码调制(pulse code modulation,pcm)接口、通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口、移动产业处理器接口(mobile industry processor interface,mipi)、用输入输出(general-purpose input/output,gpio)接口、sim卡接口和/或usb接口等。其中,usb接口130是符合usb标准规范的接口,具体可以是mini usb接口、micro usb接口、usb type c接口等。usb接口130可以用于连接充电器为电子设备101充电,也可以用于电子设备101与外围设备之间传输数据。该usb接口130也可以用于连接耳机,通过耳机播放音频。
42.可以理解的是,本技术实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本技术另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
43.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
44.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110、内部存储器121、外部存储器、显示屏194、摄像头193和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量、电池循环次数、电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
45.电子设备100的无线通信功能可以通过天线1、天线2、移动通信模块150、无线通信模块160、调制解调处理器以及基带处理器等实现。
46.天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
47.移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
48.无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络)、蓝牙(blue tooth,bt),全球导航卫星系统(global navigation satellite system,gnss)、调频(frequency modulation,fm)、近距离无线通信技术(near field communication,nfc)、红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
49.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
50.显示屏194用于显示图像、视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd)、有机发光二极管(organic light-emitting diode,oled)、有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,amoled)、柔性发光二极管(flex light-emitting diode,fled)、迷你发光二极管(mini light-emitting diode,miniled)、microled、micro-oled、量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,电子设备100可以包括1个或多个显示屏194。
51.电子设备100可以通过isp、摄像头193、视频编解码器、gpu、显示屏194以及应用处理器等实现拍摄功能。
52.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传
递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点、亮度、肤色进行算法优化。isp还可以对拍摄场景的曝光、色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
53.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或多个摄像头193。
54.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
55.视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1、mpeg2、mpeg3、mpeg4等。
56.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别、人脸识别、语音识别、文本理解等。
57.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
58.内部存储器121可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在内部存储器121的上述指令,从而使得电子设备101执行本技术一些实施例中所提供的显示页面元素的方法,以及各种应用以及数据处理等。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统;该存储程序区还可以存储一个或多个应用(比如图库、联系人等)等。存储数据区可存储电子设备101使用过程中所创建的数据(比如照片,联系人等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储部件,闪存部件,通用闪存存储器(universal flash storage,ufs)等。在一些实施例中,处理器110可以通过运行存储在内部存储器121的指令,和/或存储在设置于处理器110中的存储器的指令,来使得电子设备101执行本技术实施例中所提供的显示页面元素的方法,以及其他应用及数据处理。电子设备100可以通过音频模块170、扬声器170a、受话器170b、麦克风170c、耳机接口170d、以及应用处理器等实现音频功能。例如音乐播放、录音等。
59.传感器模块180可以包括压力传感器180a、陀螺仪传感器180b、气压传感器180c、磁传感器180d、加速度传感器180e、距离传感器180f、接近光传感器180g、指纹传感器180h、温度传感器180j、触摸传感器180k、环境光传感器180l、骨传导传感器180m等。
60.其中,压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180a可以设置于显示屏194。压力传感器180a的种类很多,如电阻式
programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
70.如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
71.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
72.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
73.视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
74.电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
75.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
76.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
77.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
78.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
79.应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
80.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)等。
81.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
82.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4,h.264,mp3,aac,amr,jpg,png等。
83.三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
84.2d图形引擎是2d绘图的绘图引擎。
85.内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
86.第二部分,本技术实施例所公开的系统框图和通信框架介绍如下。
87.示例性的,图3示出了电子设备100的系统框图,包括应用程序层、通信框架和通信接口,应用程序层与通信框架之间通过软体接口通信,通信框架与通信接口之间通过软体
接口进行通信,设备与设备之间通过通信接口进行通信。
88.其中,应用程序层可以包括多个应用程序,如音频播放应用程序、视频播放应用程序、购物应用程序、即时通信应用程序、支付应用程序、购票应用程序、办公应用程序、导航应用程序、等等。
89.其中,通信接口可以是图1中的移动通信接口或无线通信接口。
90.示例性的,图4示出了通信框架的结构示意图,该通信框架包括应用接口模块、服务模块和底层驱动模块;其中,服务模块用于处理业务事件;服务模块通过底层驱动模块与电子设备的通信接口进行交互;服务模块通过应用接口模块与电子设备中的应用程序进行交互。
91.其中,该通信框架应用于rtos。
92.其中,业务事件例如有建立链接业务事件、断开链接业务事件、报文发送事件、报文接收事件,等等。
93.其中,应用通信接口通过应用程序接口(application programming interface,api)与服务模块进行通信。api例如有打开链路(open-link)、断开链接(close-link)、创建(create)、消除(destroy)、注册客户端(reg-client)、注销客户端(dereg-client)、发送报文(send packet)、发送客户信号(send cust signal),等等。
94.其中,服务模块给底层驱动模块提供信号集,该信号集用于底层驱动模块向服务模块发送信号。其中,信号集包括以下至少一种信号:打开链路信号(sig-open)、断开链接信号(sig-close)、接收完成信号(sig-rx-done)、发送完成信号(sig-tx-done)、发送错误信号(sig-tx-error),等等。
95.可选地,请参见图5,该通信框架还包括报文封包对象,服务模块与报文封包对象绑定,服务模块调用报文封包对象处理报文封包事件。
96.其中,服务模块包括参考单元,该参考单元与报文封包对象绑定。
97.其中,服务模块通过报文封包统一接口类与报文封包对象进行通信,报文解包统一接口类实现了对接包流程进行抽象。每一种格式都可以实现其自定义的解包方法,例如at指令格式。
98.可选地,该通信框架还包括报文解包对象,服务模块与报文解包对象绑定,服务模块调用报文解包对象处理报文解包事件。
99.其中,该参考单元与报文解包对象绑定。
100.其中,服务模块通过报文解包统一接口类与报文解包对象进行通信,报文封包统一接口类实现了对封包流程进行抽象。每一种格式都可以实现其自定义的封包方法,例如at指令格式。
101.可选地,通信框架还包括硬件适配对象,服务模块与硬件适配对象绑定,服务模块调用硬件适配对象与底层驱动模块进行交互。
102.其中,该参考单元与硬件适配对象绑定。
103.其中,服务模块通过传输层驱动统一接口类与硬件适配对象进行通信,传输层驱动统一接口类实现了对数据传输流程进行了抽象。每一种驱动按照接口实现其自定义的传输层功能,例如通用异步收发传输器(universal asynchronous receiver/transmitter,uart)硬件接口。
104.可选地,所述服务模块包括应用链表、报文接收链表、报文发送链表中的至少一个;
105.所述报文接收链表用于存储接收到的报文;
106.所述报文发送链表用于存储待发送的报文;
107.所述应用程序链表用于存储应用程序的信息。
108.其中,应用程序的信息例如有应用程序的标识,应用程序的大小,应用程序运行时占用的内存大小,等等。
109.可选地,所述服务模块包括事件处理循环单元,所述事件处理循环单元用于接收所述应用接口模块或所述底层驱动模块发送的交互信息、以及响应所述交互信息,以提供功能的逻辑实现。
110.其中,交互信息例如有打开链路请求、打开链路结果信号、允许打开链路信号、断开链接请求、断开链接结果信号、允许断开链接信号、报文发送请求、报文发送结果,等等。
111.可以看出,在本技术实施例中,电子设备包括的通信框架有应用接口模块、服务模块和底层驱动模块,服务模块用于处理业务事件,服务模块通过底层驱动模块与电子设备的通信接口进行交互,服务模块通过应用接口模块与电子设备中的应用进行交互,实现了统一应用接口、统一通信接口、以及业务事件统一在一个模块中处理,避免了功能模块耦合严重的问题,达到了为系统提供通用的通信框架的目的。
112.第三部分,本技术实施例所公开的业务事件处理方法介绍如下。
113.请参阅图6,图6是本技术实施例提供了一种业务事件处理方法的流程示意图,应用于上述通信框架中的服务模块,该业务事件处理方法包括以下步骤:
114.步骤601:接收应用接口模块或底层驱动模块发送的交互信息;
115.步骤602:基于所述交互信息处理业务事件。
116.其中,交互信息例如有打开链路请求、打开链路结果信号、允许打开链路信号、断开链接请求、断开链接结果信号、允许断开链接信号、报文发送请求、报文发送结果,等等。
117.其中,业务事件例如有建立链接业务事件、断开链接业务事件、报文发送事件、报文接收事件,等等。
118.在本技术的一实现方式中,所述接收应用接口模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
119.接收所述应用接口模块发送的打开链路请求;
120.调用硬件适配对象向所述底层驱动模块发送打开链路信号,所述打开链路信号用于触发所述底层驱动模块执行打开链路操作;
121.通过所述硬件适配对象接收所述底层驱动模块发送的打开链路结果信号;
122.向所述应用接口模块发送第一事件反馈信号,所述第一事件反馈信号用于触发所述应用接口模块指示第一应用处理打开链路结果事件,所述第一应用为触发所述打开链路请求的应用。
123.具体地,如图7所示,步骤1:应用接口模块向服务模块的事件处理循环单元发送打开链路请求;步骤2:服务模块的事件处理循环单元接收到该打开链路请求之后,向硬件适配对象发送打开链路信号;步骤3:硬件适配对象接收到该打开链路信号之后,向底层驱动模块转发该打开链路信号;步骤4:底层驱动模块接收到该打开链路信号之后,执行打开链
路操作(如底层驱动模块触发电子设备的通信接口向其他电子设备(其他电子设备也包括本技术的通信框架)的通信接口发送建立链接信号,以使得电子设备的应用程序与其他电子设备中的应用程序建立链接);步骤5:底层驱动模块向硬件适配对象发送打开链路结果信号;步骤6:硬件适配对象接收到打开链路结果信号之后,向服务模块的事件处理循环单元转发该打开链路结果信号;步骤7:服务模块的事件处理循环单元接收到该打开链路结果信号之后,向应用接口模块发送一个事件反馈信号,以触发应用接口模块指示触发该打开链路请求的应用处理打开链路结果事件,如申请业务资源,启动业务数据交互等。其中,步骤5和步骤4可以是异步过程。
124.在本技术的一实现方式中,所述接收底层驱动模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
125.调用硬件适配对象接收所述底层驱动模块发送的允许打开链路信号,所述允许打开链路信号是所述底层驱动模块在接收到建立链接信号之后发送的;
126.向所述应用接口模块发送第二事件反馈信号,所述第二事件反馈信号用于触发所述应用接口模块指示第二应用处理允许打开链路事件,所述第二应用为所述建立链路信号对应的应用。
127.具体地,如图8所示,步骤1:底层驱动模块接收到建立链接信号之后,向硬件适配对象发送允许打开链路信号,该建立链接信号是其他电子设备通过通信接口给电子设备的通信接口发送过来的;步骤2:硬件适配对象接收到允许打开链路信号之后,向服务模块的事件处理循环单元转发该允许打开链路信号;步骤3:服务模块的事件处理循环单元接收到该允许打开链路信号之后,向应用接口模块发送一个事件反馈信号,以触发应用接口模块指示触发该建立链接信号对应的应用处理允许打开链路事件,如申请业务资源,启动业务数据交互等。
128.在本技术的一实现方式中,所述接收应用接口模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
129.接收所述应用接口模块发送的断开链接请求;
130.调用硬件适配对象向所述底层驱动模块发送断开链接信号,所述断开链接信号用于触发所述底层驱动模块执行断开链接操作;
131.通过所述硬件适配对象接收所述底层驱动模块发送的断开链接结果信号;
132.向所述应用接口模块发送第三事件反馈信号,所述第三事件反馈信号用于触发所述应用接口模块指示第三应用处理断开链接结果事件,所述第三应用为触发所述断开链接请求的应用。
133.具体地,如图9所示,步骤1:应用接口模块向服务模块的事件处理循环单元发送断开链接请求;步骤2:服务模块的事件处理循环单元接收到该断开链接请求之后,向硬件适配对象发送断开链接信号;步骤3:硬件适配对象接收到该断开链接信号之后,向底层驱动模块转发该断开链接信号;步骤4:底层驱动模块接收到该断开链接信号之后,执行断开链接操作(如底层驱动模块触发电子设备的通信接口向其他电子设备(其他电子设备也包括本技术的通信框架)的通信接口发送断开链接信号,以使得电子设备的应用程序与其他电子设备中的应用程序断开链接);步骤5:底层驱动模块向硬件适配对象发送断开链接结果信号;步骤6:硬件适配对象接收到断开链接结果信号之后,向服务模块的事件处理循环单
元转发该断开链接结果信号;步骤7:服务模块的事件处理循环单元接收到该断开链接结果信号之后,向应用接口模块发送一个事件反馈信号,以触发应用接口模块指示触发该断开链接请求的应用处理断开链接结果事件,如释放内存资源,结束数据发送等。
134.其中,步骤5和步骤6可以是异步过程。在步骤7之后,服务模块清空报文接收链表、清空报文发送链表、重置报文封包对象(以将报文封包对象内部状态机复位)、重置报文解包对象(以将报文解包模块内部状态机复位)。
135.在本技术的一实现方式中,所述接收底层驱动模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
136.调用硬件适配对象接收所述底层驱动模块发送的允许断开链接信号,所述允许打开链路信号是所述底层驱动模块在接收到断开链接信号之后发送的;
137.向所述应用接口模块发送第四事件反馈信号,所述第四事件反馈信号用于触发所述应用接口模块指示第四应用处理允许断开链接事件,所述第四应用为所述断开链接信号对应的应用。
138.具体地,如图10所示,步骤1:底层驱动模块接收到断开链接信号之后,向硬件适配对象发送允许断开链接信号,该断开链接信号是其他电子设备通过通信接口给电子设备的通信接口发送过来的;步骤2:硬件适配对象接收到允许断开链接信号之后,向服务模块的事件处理循环单元转发该允许断开链接信号;步骤3:服务模块的事件处理循环单元接收到该允许断开链接信号之后,向应用接口模块发送一个事件反馈信号,以触发应用接口模块指示触发该断开链接信号对应的应用处理允许断开链接事件,如如释放内存资源,结束数据发送等。
139.其中,在步骤3之后,服务模块清空报文接收链表、清空报文发送链表、重置报文封包对象(以将报文封包对象内部状态机复位)、重置报文解包对象(以将报文解包模块内部状态机复位)。
140.在本技术的一实现方式中,所述接收应用接口模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
141.接收所述应用接口模块发送的报文发送请求,所述报文发送请求携带第一报文;
142.调用报文解包对象对所述第一报文进行解包,得到第一数据帧;
143.调用硬件适配对象向所述底层驱动模块发送报文发送信号,所述报文发送信号用于触发所述底层驱动模块执行报文发送操作,所述报文发送操作用于发送解包得到的第一数据帧;
144.通过所述硬件适配对象接收所述底层驱动模块发送的报文发送结果信号;
145.向所述应用接口反馈发送事件反馈信号,所述发送事件反馈信号用于触发所述应用接口模块指示第五应用处理报文发送事件,所述第五应用为触发所述报文发送请求的应用。
146.具体地,如图11所示,步骤1:应用接口模块向服务模块的事件处理循环单元发送报文发送请求,该报文发送请求携带第一报文;步骤2:服务模块的事件处理循环单元接收到该报文发送请求之后,将第一报文推到服务模块的报文发送链表中;步骤3:服务模块的报文发送链表向服务模块的事件处理循环单元发送报文准备信号;步骤4:服务模块的事件处理循环单元接收到该报文准备信号之后,将第一报文传递给报文解包对象;步骤5:服务
模块的事件处理循环单元读取报文解包对象对第一报文进行解包得到的第一数据帧;步骤6:服务模块的事件处理循环单元向硬件适配对象发送报文发送信号;步骤7:硬件适配对象接收到该报文发送信号之后,向底层驱动模块转发该报文发送信号;步骤8:底层驱动模块接收到该报文发送信号之后,执行报文发送操作(如底层驱动模块触发电子设备的通信接口向其他电子设备(其他电子设备也包括本技术的通信框架)的通信接口发送解包得到的第一数据帧,以将电子设备的应用程序的数据发送给其他电子设备的应用程序);步骤9:底层驱动模块向硬件适配对象发送报文发送结果信号;步骤10:硬件适配对象接收到该报文发送结果之后,向服务模块的事件处理循环单元转发该报文发送结果信号;步骤11:服务模块的事件处理循环单元接收到该报文发送结果之后,向所述应用接口反馈一个发送事件反馈信号,以触发应用接口模块指示触发该报文发送请求的应用处理报文发送事件,如触发下一条业务数据发送。
147.其中,步骤8和步骤9可以是异步过程。服务模块的事件处理循环单元接收到该报文发送结果之后,服务模块的事件处理循环单元将第一报文从报文发送链表中移除,如果报文发送链表非空则继续执行步骤3。
148.在本技术的一实现方式中,所述接收底层驱动模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
149.接收硬件适配对象发送的接收完成信号,所述接收完成信号是所述硬件适配对象在完成接收底层驱动模块发送的第二数据帧之后发送的;
150.读取所述硬件适配对象中的所述第二数据帧,以及调用报文封包对象对所述第二数据帧进行封包,得到第二报文;
151.向所述应用接口模块发送接收事件反馈信号及所述第二报文,所述接收事件反馈信号用于触发所述应用接口模块指示第六应用处理接收到的所述第二报文。
152.具体地,如图12所示,步骤1:底层驱动模块接收到第二数据帧之后,向硬件适配对象发送数据接收信号,该数据接收信号携带第二数据帧;步骤2:在硬件适配对象完成接收底层驱动模块发送的第二数据帧之后,向服务模块的事件处理循环单元发送接收完成信号;步骤3:服务模块的事件处理循环单元接收到该接收完成信号之后,读取所述硬件适配对象中的第二数据帧;步骤4:服务模块的事件处理循环单元将读取到的第二数据帧传递给报文封包对象;步骤5:服务模块的事件处理循环单元读取报文封包对象对第二数据帧进行封包得到的第二报文;步骤6:服务模块的事件处理循环单元将读取到的第二报文添加到报文接收链表尾部;步骤7:服务模块的事件处理循环单元从报文接收链表的头部取最早接收到的报文;步骤:8:服务模块的事件处理循环单元向应用接口模块发送接收事件反馈信号以及报文,以触发应用接口模块指示接收到报文的应用处理报文。
153.其中,步骤7之后,服务模块的事件处理循环单元将第二报文从报文接收链表中移除,如果报文接收链表非空则继续执行步骤7。
154.在本技术的一实现方式中,所述接收底层驱动模块发送的交互信息,以及基于所述交互信息处理业务事件,包括:
155.接收硬件适配对象发送的接收错误信号,所述接收错误信号是所述硬件适配对象在底层驱动模块发送的异常信号之后发送的;
156.调用报文封包对象的重置方法清除电子设备的内部状态机。
157.可以看出,在本技术实施例中,通过通信框架的服务模块接收应用接口模块或底层驱动模块发送的交互信息,然后基于该交互信息处理业务事件,实现了统一应用接口、统一通信接口、以及业务事件统一在一个模块中处理,避免了功能模块耦合严重的问题,达到了为系统提供通用的通信框架的目的。
158.可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
159.本实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
160.在采用对应各个功能划分各个功能模块的情况下,图13示出了业务事件处理装置的示意图,如图13所示,该业务事件处理装置1300应用于上述通信框架中的服务模块,该业务事件处理装置1300可以包括:接收单元1301和事件处理单元1302。
161.其中,接收单元1301可以用于支持服务模块执行上述步骤601等,和/或用于本文所描述的技术的其他过程。
162.事件处理单元1302可以用于支持服务模块执行上述步骤602等,和/或用于本文所描述的技术的其他过程。
163.需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
164.本实施例提供的电子设备,用于执行上述业务事件处理方法,因此可以达到与上述实现方法相同的效果。
165.在采用集成的单元的情况下,电子设备可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对电子设备的动作进行控制管理,例如,可以用于支持电子设备执行上述接收单元1301和事件处理单元1302执行的步骤。存储模块可以用于支持电子设备执行存储程序代码和数据等。通信模块,可以用于支持电子设备与其他设备的通信。
166.其中,处理模块可以是处理器或控制器。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,dsp)和微处理器的组合等等。存储模块可以是存储器。通信模块可以是通信接口(如移动通信模块、无线通信模块等)。
167.在一个实施例中,当处理模块为处理器,存储模块为存储器,通信模块为通信接口时,本实施例所涉及的电子设备可以为具有图1所示结构的设备。
168.本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的位置确定方法。
169.本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的位置确定方法。
170.另外,本技术的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的位置确定方法。
171.其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
172.通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
173.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
174.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
175.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
176.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
177.以上内容,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜