CN114356804B - 通信方法、装置、设备、计算机可读存储介质及程序产品 - Google Patents
通信方法、装置、设备、计算机可读存储介质及程序产品 Download PDFInfo
- Publication number
- CN114356804B CN114356804B CN202111626468.8A CN202111626468A CN114356804B CN 114356804 B CN114356804 B CN 114356804B CN 202111626468 A CN202111626468 A CN 202111626468A CN 114356804 B CN114356804 B CN 114356804B
- Authority
- CN
- China
- Prior art keywords
- interface function
- function
- processor
- registered
- chip
- 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.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000006870 function Effects 0.000 claims abstract description 242
- 238000004590 computer program Methods 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Telephone Function (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供了一种通信方法、装置、设备、计算机可读存储介质及计算机程序产品,涉及蓝牙通信领域,该方法包括:将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数。本申请实施例在同一系统级芯片中实现了处理器和设备之间进行通信。
Description
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种通信方法、装置、设备、计算机可读存储介质及程序产品。
背景技术
现有技术中BLE(Bluetooth Low Energy,蓝牙低能耗)也称低功耗蓝牙,是一种个人局域网技术。BLE可以应用于医疗保健、运动健身、安防、家庭娱乐等领域;BLE可以在保持同等通信范围的同时,显著降低功耗和成本。SOC(System on Chip,系统级芯片)是一个有专用目标的集成电路。CPU(central processing unit,中央处理器)和BLE芯片处于同一个SOC中,如何在该SOC中实现CPU(central processing unit,中央处理器)和BLE芯片之间的通信是有待解决的问题。
发明内容
本申请针对现有的方式的缺点,提出一种通信方法、装置、设备、计算机可读存储介质及计算机程序产品,用于解决如何在同一个SOC中实现CPU和BLE芯片之间通信的问题。
第一方面,本申请提供了一种通信方法,包括:
将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;
响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数。
在一个实施例中,将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数,包括:
将预设系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数。
在一个实施例中,处理器的预设系统中接口函数对应的实例,包括以下任意一项:
设备的初始化函数;
设备的发送函数;
设备的接收函数;
设备的特殊函数。
在一个实施例中,设备的初始化函数的功能包括以下至少一项:
复位设备;
运行设备的线程;
注册并接收设备的回调队列;
设备的发送函数的功能包括以下至少一项:
判断应用程序的发送类型;
发送命令或数据到设备的线程;
通过设备的线程将命令或数据进行发送;
设备的接收函数的功能包括:基于设备接收的回调函数中的数据类型,区分命令和数据。
在一个实施例中,设备为芯片,处理器和芯片共同处于系统级芯片SOC中。
在一个实施例中,芯片为蓝牙芯片。
第二方面,本申请提供了一种通信装置,包括:
第一处理模块,用于将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;
第二处理模块,用于响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数。
第三方面,本申请提供了一种电子设备,包括:处理器、存储器和总线;
总线,用于连接处理器和存储器;
存储器,用于存储操作指令;
处理器,用于通过调用操作指令,执行本申请第一方面的通信方法。
第四方面,本申请提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被用于执行本申请第一方面的通信方法。
第五方面,本申请提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本申请第一方面中通信方法的步骤。
本申请实施例提供的技术方案,至少具有如下有益效果:
将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数;如此,在同一系统级芯片中实现了处理器(例如CPU)和设备(例如BLE芯片)之间的通信。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为一种蓝牙通信系统的架构示意图;
图2为本申请实施例提供的通信系统的架构示意图;
图3为本申请实施例提供的一种通信方法的流程示意图;
图4为本申请实施例提供的另一种通信方法的流程示意图;
图5为本申请实施例提供的一种通信装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”指示实现为“A”,或者实现为“B”,或者实现为“A和B”。
相关技术研究发现:如图1所示,SOC100和BLE芯片200之间通过UART(UniversalAsynchronous Receiver/Transmitter,通用异步收发传输器)实现相互通信。BLE芯片200作为外挂芯片接到主控芯片SOC100上,SOC100以UART作为介质,通过HCI(Host ControllerInterface,主机控制器接口)指令与BLE芯片进行交互;HCI为SOC100和BLE芯片200之间的通信协议。但是,当CPU和BLE芯片处于同一个SOC中,通过UART并不能在该SOC中实现CPU和BLE芯片之间的通信。
基于此,为了解决如何在同一个SOC中实现CPU和BLE芯片之间通信的问题,更好的满足蓝牙通信的需求,本申请提供了一种通信方法,基于该方法将CPU的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将CPU和注册后的接口函数对应的BLE芯片之间进行通信,以使BLE芯片执行注册后的接口函数;如此,在同一SOC中实现了CPU和BLE芯片之间的通信。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了更好的理解及说明本申请实施例的方案,下面对本申请实施例中所涉及到的一些技术用语进行简单说明。
Nuttx系统:Nuttx系统是一个实时嵌入式操作系统,Nuttx系统可以在微控制器环境中使用。Nuttx系统完全可扩展,可以从小型(8位)至中型嵌入式(32位)系统。
SOC:SOC(System on Chip,系统级芯片)也可以称为称片上系统,意指SOC是一个产品,是一个有专用目标的集成电路,SOC中包含完整系统并有嵌入软件的全部内容。同时SOC又是一种技术,用以实现从确定系统功能开始,到软/硬件划分,并完成设计的整个过程。
BLE:BLE(Bluetooth Low Energy,蓝牙低能耗)芯片技术是低成本、短距离、可互操作的鲁棒性无线技术,有BLE4.0,BLE4.1,BLE4.2,BLE5.0,BLE5.1,BLE5.2等多个协议版本。
UART:UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器)将要传输的资料在串行通信与并行通信之间加以转换,例如将并行输入信号转成串行输出信号。
HCI:HCI(Host Controller Interface,主机控制器接口)层位于蓝牙高层协议和低层协议之间,其目的是实现主机设备与蓝牙模块之间的互操作,即HCI是蓝牙主机与主机控制器间软硬件接口。HCI为蓝牙硬件中基带控制器和链接管理器提供了命令接口,从而实现对硬件状态注册器和控制寄存器的访问,提供了对蓝牙基带的统一访问模式。
驱动程序:驱动程序一般指的是设备驱动程序(Device Driver),是一种可以使计算机和设备进行相互通信的特殊程序。驱动程序相当于硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例所提供的方案可以适用于蓝牙通信领域中任意蓝牙通信的应用场景。
为了更好的理解本申请实施例提供的方案,下面结合具体的一个应用场景对该方案进行说明。
在一个实施例中,图2中示出了本申请实施例所适用的一种通信系统的架构示意图,可以理解的是,本申请实施例所提供的通信方法可以适用于但不限于应用于如图2所示的应用场景中。
本示例中,如图2所示,该示例中的通信系统的架构可以包括但不限于SOC10、CPU20和BLE芯片30;其中,CPU20和BLE芯片30处于SOC10中,SOC10可以处于服务器中。将CPU20的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将CPU20和注册后的接口函数对应的BLE芯片30之间进行通信,以使BLE芯片30执行注册后的接口函数;其中,CPU20和BLE芯片30处于SOC10中,预设系统可以为Nuttx。
可理解,上述仅为一种示例,本实施例在此不作限定。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。具体也可基于实际应用场景需求确定,在此不作限定。
参见图3,图3示出了本申请实施例提供的一种通信方法的流程示意图,其中,该方法可以由任一电子设备执行,如可以是服务器,作为一可选实施方式,该方法可以由服务器执行,为了描述方便,在下文的一些可选实施例的描述中,将以服务器作为该方法执行主体为例进行说明。如图3所示,本申请实施例提供的通信方法包括如下步骤:
S201,将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数。
具体地,处理器可以为CPU,预设系统可以为Nuttx系统。可以在Nuttx系统上增加驱动程序,提供Nuttx系统中的接口函数open、接口函数send、接口函数read等。
Nuttx系统的驱动程序可以分为上下两层;其中,驱动程序的上层包括接口函数,即接口函数open、接口函数send、接口函数read等,驱动程序的下层包括接口函数对应的实例。进行驱动注册,即CPU将下层包括的接口函数对应的实例,注册到上层的接口函数,得到注册后的接口函数,该注册后的接口函数可以在上层中;用户通过Nuttx系统调用注册后的接口函数;在用户通过Nuttx系统调用注册后的接口函数之后,BLE芯片可以执行注册后的接口函数,即BLE芯片执行接口函数对应的实例。
S202,响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数。
具体地,注册后的接口函数对应的设备可以为BLE芯片。用户通过Nuttx系统调用注册后的接口函数;在用户通过Nuttx系统调用注册后的接口函数之后,CPU和注册后的接口函数对应的BLE芯片之间进行通信,BLE芯片可以执行注册后的接口函数,即BLE芯片执行接口函数对应的实例。
本申请实施例中,将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数;如此,在同一系统级芯片中实现了处理器(例如CPU)和设备(例如BLE芯片)之间的通信。
在一个实施例中,将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数,包括:
将预设系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数。
具体地,预设系统可以为Nuttx系统,Nuttx系统的驱动程序可以分为上下两层;其中,驱动程序的上层包括接口函数,即接口函数open、接口函数send、接口函数read等,驱动程序的下层包括接口函数对应的实例。
在一个实施例中,处理器的预设系统中接口函数对应的实例,包括以下任意一项:
设备的初始化函数;
设备的发送函数;
设备的接收函数;
设备的特殊函数。
在一个实施例中,驱动注册包括:
(1)将ble初始化功能函数(例如,ble_open)注册到接口函数open中;
(2)将ble发送功能函数(例如,ble_send)注册到接口函数send中;
(3)将bleioctl功能函数注册到ble网络接口功能函数中,实现特殊功能控制;
(4)将ble接收功能函数(例如,ble_read)注册到接口函数read中。
其中,ble初始化功能函数可以为设备的初始化函数,ble发送功能函数可以为设备的发送函数,bleioctl功能函数可以为设备的特殊函数,ble接收功能函数可以为设备的接收函数;Nuttx系统中接口函数可以为接口函数open、接口函数send、接口函数read、ble网络接口功能函数等。
在一个实施例中,设备的初始化函数的功能包括以下至少一项:
复位设备;
运行设备的线程;
注册并接收设备的回调队列;
设备的发送函数的功能包括以下至少一项:
判断应用程序的发送类型;
发送命令或数据到设备的线程;
通过设备的线程将命令或数据进行发送;
设备的接收函数的功能包括:基于设备接收的回调函数中的数据类型,区分命令和数据。
在一个实施例中,设备的初始化函数可以为ble初始化功能函数,ble初始化功能函数例如ble_open;其中,ble_open可以用于:复位ble设备、运行ble设备线程、注册并接收回调队列等;当有数据或命令从ble设备返回后,上层软件(驱动程序的上层的接口函数)可以进行响应;ble设备可以为BLE芯片。设备的发送函数可以为ble发送功能函数,ble发送功能函数例如ble_send;其中,ble_send可以用于:判断应用程序的发送类型、发送命令或数据到ble设备的线程、通过ble设备的线程将命令或数据进行发送等;ble设备可以为BLE芯片。设备的接收函数可以为ble接收功能函数,ble接收功能函数例如ble_read;其中,ble_read可以用于:基于ble设备接收的回调函数中的数据类型,区分命令和数据,命令和数据供应用程序使用。
在一个实施例中,设备为芯片,处理器和芯片共同处于系统级芯片SOC中。
在一个实施例中,CPU和BLE芯片共同处于系统级芯片SOC中,将CPU的Nuttx系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;Nuttx系统调用注册后的接口函数,即Nuttx系统调用接口函数对应的实例;CPU和注册后的接口函数对应的BLE芯片之间进行通信,BLE芯片执行注册后的接口函数,即BLE芯片执行接口函数对应的实例。
在一个实施例中,芯片为蓝牙芯片。
具体地,蓝牙芯片可以为BLE芯片。
应用本申请实施例,至少具有如下有益效果:
CPU和BLE芯片共同处于系统级芯片SOC中,将CPU的Nuttx系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;Nuttx系统调用注册后的接口函数,即Nuttx系统调用接口函数对应的实例;CPU和注册后的接口函数对应的BLE芯片之间进行通信,BLE芯片执行注册后的接口函数,即BLE芯片执行接口函数对应的实例;如此,在同一SOC中实现了CPU和BLE芯片之间的通信。
为了更好的理解本申请实施例所提供的方法,下面结合具体应用场景的示例对本申请实施例的方案进行进一步说明。
本申请实施例所提供的方案可以适用于蓝牙通信领域中任意蓝牙通信的应用场景。
参见图4,图4示出了本申请实施例提供的一种通信方法的流程示意图,其中,该方法可以由任一电子设备执行,如可以是服务器,作为一可选实施方式,该方法可以由服务器执行,为了描述方便,在下文的一些可选实施例的描述中,将以服务器作为该方法执行主体为例进行说明。如图4所示,本申请实施例提供的通信方法包括如下步骤:
S401,将CPU的Nuttx系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数,其中,CPU处于SOC中。
S402,Nuttx系统调用注册后的接口函数,即Nuttx系统调用接口函数对应的实例。
S403,CPU和SOC中的BLE芯片之间进行通信。
S404,BLE芯片执行注册后的接口函数,即BLE芯片执行接口函数对应的实例。
应用本申请实施例,至少具有如下有益效果:
CPU和BLE芯片共同处于系统级芯片SOC中,将CPU的Nuttx系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;Nuttx系统调用注册后的接口函数,即Nuttx系统调用接口函数对应的实例;CPU和注册后的接口函数对应的BLE芯片之间进行通信,BLE芯片执行注册后的接口函数,即BLE芯片执行接口函数对应的实例;如此,在同一SOC中实现了CPU和BLE芯片之间的通信。
本申请实施例还提供了一种通信装置,该通信装置的结构示意图如图5所示,通信装置50,包括第一处理模块501和第二处理模块502。
第一处理模块501,用于将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;
第二处理模块502,用于响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数。
在一个实施例中,第一处理模块501,具体用于:
将预设系统的驱动程序中接口函数对应的实例,注册到接口函数,得到注册后的接口函数。
在一个实施例中,处理器的预设系统中接口函数对应的实例,包括以下任意一项:
设备的初始化函数;
设备的发送函数;
设备的接收函数;
设备的特殊函数。
在一个实施例中,设备的初始化函数的功能包括以下至少一项:
复位设备;
运行设备的线程;
注册并接收设备的回调队列;
设备的发送函数的功能包括以下至少一项:
判断应用程序的发送类型;
发送命令或数据到设备的线程;
通过设备的线程将命令或数据进行发送;
设备的接收函数的功能包括:基于设备接收的回调函数中的数据类型,区分命令和数据。
在一个实施例中,设备为芯片,处理器和芯片共同处于系统级芯片SOC中。
在一个实施例中,芯片为蓝牙芯片。
应用本申请实施例,至少具有如下有益效果:
将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数;如此,在同一系统级芯片中实现了处理器(例如CPU)和设备(例如BLE芯片)之间的通信。
本申请实施例还提供了一种电子设备,该电子设备的结构示意图如图6所示,图6所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器4003用于存储执行本申请实施例的计算机程序,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的计算机程序,以实现前述方法实施例所示的步骤。
其中,电子设备包括但不限于:服务器等。
应用本申请实施例,至少具有如下有益效果:
将处理器的预设系统中接口函数对应的实例,注册到接口函数,得到注册后的接口函数;响应于预设系统调用注册后的接口函数,将处理器和注册后的接口函数对应的设备之间进行通信,以使设备执行注册后的接口函数;如此,在同一系统级芯片中实现了处理器(例如CPU)和设备(例如BLE芯片)之间的通信。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
基于与本申请实施例提供的方法相同的原理,本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述本申请任一可选实施例中提供的方法。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (8)
1.一种通信方法,其特征在于,包括:
将处理器的预设系统中接口函数对应的实例,注册到所述接口函数,得到注册后的接口函数,所述预设系统为实时嵌入式操作系统Nuttx;
响应于所述预设系统调用所述注册后的接口函数,将所述处理器和所述注册后的接口函数对应的设备之间进行通信,以使所述设备执行所述注册后的接口函数;
所述设备为芯片,所述处理器和所述芯片共同处于系统级芯片SOC中;
所述将处理器的预设系统中接口函数对应的实例,注册到所述接口函数,得到注册后的接口函数,包括:
将预设系统的驱动程序中接口函数对应的实例,注册到所述接口函数,得到注册后的接口函数。
2.根据权利要求1所述的方法,其特征在于,所述处理器的预设系统中接口函数对应的实例,包括以下任意一项:
所述设备的初始化函数;
所述设备的发送函数;
所述设备的接收函数;
所述设备的特殊函数。
3.根据权利要求2所述的方法,其特征在于,所述设备的初始化函数的功能包括以下至少一项:
复位所述设备;
运行所述设备的线程;
注册并接收所述设备的回调队列;
所述设备的发送函数的功能包括以下至少一项:
判断应用程序的发送类型;
发送命令或数据到所述设备的线程;
通过所述设备的线程将命令或数据进行发送;
所述设备的接收函数的功能包括:基于所述设备接收的回调函数中的数据类型,区分命令和数据。
4.根据权利要求1所述的方法,其特征在于,所述芯片为蓝牙芯片。
5.一种通信装置,其特征在于,包括:
第一处理模块,用于将处理器的预设系统中接口函数对应的实例,注册到所述接口函数,得到注册后的接口函数,所述预设系统为实时嵌入式操作系统Nuttx;
第二处理模块,用于响应于所述预设系统调用所述注册后的接口函数,将所述处理器和所述注册后的接口函数对应的设备之间进行通信,以使所述设备执行所述注册后的接口函数;
所述设备为芯片,所述处理器和所述芯片共同处于系统级芯片SOC中;
所述第一处理模块,具体用于:
将预设系统的驱动程序中接口函数对应的实例,注册到所述接口函数,得到注册后的接口函数。
6.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-4中任一项所述方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-4中任一项所述方法的步骤。
8.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-4中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111626468.8A CN114356804B (zh) | 2021-12-28 | 2021-12-28 | 通信方法、装置、设备、计算机可读存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111626468.8A CN114356804B (zh) | 2021-12-28 | 2021-12-28 | 通信方法、装置、设备、计算机可读存储介质及程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114356804A CN114356804A (zh) | 2022-04-15 |
CN114356804B true CN114356804B (zh) | 2024-05-31 |
Family
ID=81102866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111626468.8A Active CN114356804B (zh) | 2021-12-28 | 2021-12-28 | 通信方法、装置、设备、计算机可读存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114356804B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111263339A (zh) * | 2020-01-14 | 2020-06-09 | 华为技术有限公司 | 无线通信方法和具有无线通信功能的设备 |
WO2020191549A1 (zh) * | 2019-03-22 | 2020-10-01 | 华为技术有限公司 | 一种soc芯片、确定热点函数的方法及终端设备 |
CN112134907A (zh) * | 2019-06-24 | 2020-12-25 | 北京京东尚科信息技术有限公司 | 消息处理方法、装置及设备 |
CN112612633A (zh) * | 2021-01-06 | 2021-04-06 | Oppo广东移动通信有限公司 | 进程间通信方法、装置、存储介质以及终端 |
CN112769688A (zh) * | 2020-12-18 | 2021-05-07 | 南方电网科学研究院有限责任公司 | 协议栈适配的方法、装置、电子设备及存储介质 |
CN113206832A (zh) * | 2021-03-31 | 2021-08-03 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN113329352A (zh) * | 2021-06-09 | 2021-08-31 | 展讯半导体(南京)有限公司 | 通信方法、装置、设备及介质 |
CN113505007A (zh) * | 2021-07-12 | 2021-10-15 | 北京鲸鲮信息系统技术有限公司 | 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080320146A1 (en) * | 2007-06-21 | 2008-12-25 | Microsoft Corporation | Establishing interaction between a process and a server process |
-
2021
- 2021-12-28 CN CN202111626468.8A patent/CN114356804B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020191549A1 (zh) * | 2019-03-22 | 2020-10-01 | 华为技术有限公司 | 一种soc芯片、确定热点函数的方法及终端设备 |
CN112134907A (zh) * | 2019-06-24 | 2020-12-25 | 北京京东尚科信息技术有限公司 | 消息处理方法、装置及设备 |
CN111263339A (zh) * | 2020-01-14 | 2020-06-09 | 华为技术有限公司 | 无线通信方法和具有无线通信功能的设备 |
CN113490191A (zh) * | 2020-01-14 | 2021-10-08 | 荣耀终端有限公司 | 蓝牙通信方法及其介质和电子设备 |
CN112769688A (zh) * | 2020-12-18 | 2021-05-07 | 南方电网科学研究院有限责任公司 | 协议栈适配的方法、装置、电子设备及存储介质 |
CN112612633A (zh) * | 2021-01-06 | 2021-04-06 | Oppo广东移动通信有限公司 | 进程间通信方法、装置、存储介质以及终端 |
CN113206832A (zh) * | 2021-03-31 | 2021-08-03 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN113329352A (zh) * | 2021-06-09 | 2021-08-31 | 展讯半导体(南京)有限公司 | 通信方法、装置、设备及介质 |
CN113505007A (zh) * | 2021-07-12 | 2021-10-15 | 北京鲸鲮信息系统技术有限公司 | 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114356804A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113626224B (zh) | 一种nfc数据的交互方法、装置、电子设备及存储介质 | |
US8788787B2 (en) | Systems, methods and architecture for facilitating software access to acceleration technology | |
CN105051706A (zh) | 用于具有pcie协议栈的低功率phy的操作的设备、方法和系统 | |
US20130091502A1 (en) | System and method of providing virtual machine using device cloud | |
US20110241844A1 (en) | Appliance including a radio frequency identification (rfid) device and method for two-way communication of dynamic data by the appliance via the rfid device | |
CN211557320U (zh) | 电子设备和蜂窝电话 | |
US20230122238A1 (en) | Account binding method, device, and system | |
CN112788074A (zh) | 数据发送方法、处理方法、接收方法及其设备、存储介质 | |
US20200311006A1 (en) | Electronic system | |
CN111490946B (zh) | 基于OpenCL框架的FPGA连接实现方法及装置 | |
US20130326541A1 (en) | Enabling legacy applications to achieve end-to-end communication with corresponding legacy device services | |
CN102292714B (zh) | 装置组件之间的内存资源共享的通讯协定 | |
CN116243853A (zh) | 数据传输方法、装置、电子设备及非易失性存储介质 | |
US9055432B2 (en) | Targeted muting for communication between electronic appliances | |
CN114356804B (zh) | 通信方法、装置、设备、计算机可读存储介质及程序产品 | |
US11303745B2 (en) | Electronic system | |
CN110659143B (zh) | 一种容器间的通讯方法、装置及电子设备 | |
CN115022424B (zh) | 水电lcu控制器网卡虚拟控制方法、系统、设备及其介质 | |
CN116450554A (zh) | 中断处理方法、根复合体设备及电子设备 | |
US9088304B2 (en) | Interface deactivation for communication between electronic appliances | |
CN109582481B (zh) | 调用结果的传输方法、装置、设备及存储介质 | |
CN113849449A (zh) | 一种通信系统和信息交互方法、设备和介质 | |
CN101800695A (zh) | 一种软件实现同步通信及异步通信的方法 | |
US20200150904A1 (en) | System and Method for Managing Content using Generic Content Management Interface | |
CN112565421B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100176 Room 101, 1f, building 3, yard 18, Kechuang 10th Street, Beijing Economic and Technological Development Zone, Beijing Applicant after: Beijing yisiwei Computing Technology Co.,Ltd. Address before: 100176 Room 101, 1f, building 3, yard 18, Kechuang 10th Street, Beijing Economic and Technological Development Zone, Beijing Applicant before: Beijing yisiwei Computing Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |