CN101447808A - 蓝牙文件传输系统 - Google Patents
蓝牙文件传输系统 Download PDFInfo
- Publication number
- CN101447808A CN101447808A CNA2007101873861A CN200710187386A CN101447808A CN 101447808 A CN101447808 A CN 101447808A CN A2007101873861 A CNA2007101873861 A CN A2007101873861A CN 200710187386 A CN200710187386 A CN 200710187386A CN 101447808 A CN101447808 A CN 101447808A
- Authority
- CN
- China
- Prior art keywords
- serial port
- module
- drive module
- data flow
- port drive
- 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
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种蓝牙文件传输系统,包括:蓝牙芯片,用于实现蓝牙无线通讯功能,并构造符合预定规范的串口,将数据流经由串口发送至串口驱动模块,以及接收串口驱动模块经由串口发送过来的数据流;以及串口驱动模块,位于基带芯片侧,用于将来自蓝牙芯片的数据流发送至基带芯片侧的应用层模块,以及将来自应用层模块的数据流发送到蓝牙芯片。通过使用本发明,能够在不提供可以支持蓝牙协议族的Socket函数集的终端平台上实现蓝牙文件的传输。
Description
技术领域
本发明涉及通信领域,并且特别地,涉及一种蓝牙文件传输系统。
背景技术
蓝牙技术是一种以低成本的近距离无线连接为基础,为固定设备与移动设备的通信环境建立一个特定连接的开放性全球规范,该技术支持数据业务和语音业务。目前,通过该技术可实现无障碍的接入距离为10米左右。
由于蓝牙技术能够实现近距离的无线数据传输,所以在嵌入式系统中得到了广泛的应用。尤其是蓝牙文件传输功能,该功能可以很方便地在手持式无线通信终端之间传递各种类型的文件,从而实现信息的共享,增强手持式无线通信终端的功能。
在手持式无线通信终端中实现蓝牙文件传输功能的过程中,通常采用套接字(Socket)函数集进行连接管理。Socket函数集是一种通信接口,位于操作系统和通信协议服务软件之上、应用软件层之下,其通常使用五元组(协议、本地设备地址、本地端口号、远端设备地址、远端端口号)管理连接信息,通信模式采用客户端/服务器方式,从而可以很方便地实现连接控制和数据收发等功能。
从Socket2.0开始,Socket函数集可以支持多种连接方式,如:IPv6、ISDN(综合业务数据网)、蓝牙(Bluetooth)等。采用Socket函数集进行连接管理,软件层次清楚,代码兼容性强,连接管理实现容易,实现这种管理的架构如图1所示。
然而,在目前广泛应用的多种嵌入式无线通信终端平台当中,很多平台并不提供可以支持蓝牙协议族的Socket函数集,因此,在这些平台上就不能实现蓝牙业务。这显然限制了终端的功能,然而,目前尚未提出能够解决该问题的技术方案。
发明内容
考虑到上述问题而做出本发明,为此,本发明的主要目的在于提供一种蓝牙文件传输方案。
根据本发明的实施例,提供了一种蓝牙文件传输系统。
该系统包括:蓝牙芯片,用于实现蓝牙无线通讯功能,并构造符合预定规范的串口,将数据流经由该串口发送至串口驱动模块,以及接收串口驱动模块经由该串口发送过来的数据流;以及串口驱动模块,位于基带芯片侧,用于将来自蓝牙芯片的数据流发送至基带芯片侧的应用层模块,以及将来自应用层模块的数据流发送到蓝牙芯片。
其中,串口驱动模块进一步包括:缓冲区,用于对蓝牙芯片与串口驱动模块之间的数据流、以及串口驱动模块与应用层模块之间的数据流进行缓存。并且,该缓冲区可以包括:第一缓冲区,用于缓存从蓝牙芯片发送至串口驱动模块的数据流;第二缓冲区用于缓存从串口驱动模块发送至蓝牙芯片的数据流。
并且,该系统的缓冲区还可以进一步包括:第三缓冲区,用于缓存从串口驱动模块发送至应用层模块的数据流;第四缓冲区,用于缓存从应用层模块发送至串口驱动模块的数据流。
另外,该系统中可进一步包括:通用异步收发器,连接在串口驱动模块与蓝牙芯片之间,用于将从蓝牙芯片发送过来的数据流转发至串口驱动模块,以及将从串口驱动模块发送过来的数据流转发至蓝牙芯片。
除此之外,在该系统中,串口驱动模块利用串口操作函数对通用异步收发器进行控制。上述串口操作函数实现的功能包括:打开串口、读串口参数、写串口参数、关闭串口、读取接收到的数据、写入要发送的数据、清除串口缓冲区、以及设置回调函数或信号。
另外,预定规范为RS-232规范。
上述应用层模块包括:人机界面实现模块、状态控制模块、数据收发模块、对象交换协议实现模块、以及连接信息管理功能模块。
通过本发明的上述技术方案,能够在不提供可以支持蓝牙协议族的Socket函数集的终端平台上实现蓝牙文件的传输。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术的实现蓝牙文件传输功能的系统框图;以及
图2是根据本发明实施例的蓝牙文件传输系统的框图。
具体实施方式
在本实施例中,提供了一种蓝牙文件传输系统。该系统不需要无线通信终端平台提供支持蓝牙协议族的Socket函数集,而是在平台操作系统的设备管理层之上封装了串口驱动模块,提供了多个串口访问函数。应用层模块通过调用串口访问函数就可以操作串口,从而实现与蓝牙芯片的数据传递,最后由蓝牙芯片实现无线数据传输。
如图2所示,根据本发明实施例的蓝牙文件传输系统包括:蓝牙芯片202,用于实现蓝牙无线通讯功能,并构造符合预定规范(RS-232规范)的串口,经由串口与串口驱动模块204进行数据流交互,即,将数据流经由该串口发送至串口驱动模块,以及接收串口驱动模块经由该串口发送过来的数据流;以及串口驱动模块204,位于基带芯片侧,用于在蓝牙芯片202和基带芯片侧的应用层模块之间传递数据流,即,接收来自蓝牙芯片的数据流并将来自蓝牙芯片的数据流发送至基带芯片侧的应用层模块,以及将从应用层模块发送过来的数据流发送到蓝牙芯片。
其中,蓝牙芯片202中包括蓝牙底层协议与无线接口,并由蓝牙底层协议与无线接口来控制蓝牙芯片202完成无线通信。此外,蓝牙芯片202可通过串口仿真协议(RFComm)来构造符合预定规范的串口。
串口驱动模块204进一步包括:缓冲区,用于对蓝牙芯片202与串口驱动模块204之间的数据流、以及串口驱动模块204与应用层模块之间的数据流进行缓存。并且,该缓冲区可以包括第一缓冲区和第二缓冲区,其中,第一缓冲区用于缓存从蓝牙芯片202发送至串口驱动模块204的数据流,第二缓冲区用于缓存从由串口驱动模块204发送至蓝牙芯片202的数据流。
此时,该缓冲区还可以进一步包括:第三缓冲区,用于缓存从串口驱动模块204发送至应用层模块的数据流;第四缓冲区,用于缓存从应用层模块发送至串口驱动模块204的数据流。
这里,因为串口的硬件缓冲区通常比较小,小于蓝牙文件传输的数据包大小,出于保证收发数据的完整性的考虑,需要在串口驱动模块204上创建缓冲区,分别用于数据发送和数据接收,并且缓冲区的容量应大于蓝牙文件传输数据包的大小。
串口的硬件接收中断服务程序在收到接收中断信号后,会从串口硬件接收缓冲区中将数据读出,并缓存在二级接收缓冲区内(第一缓冲区)。在收到由串口的硬件接收中断服务程序发出的接收信号后,串口驱动模块204需要从二级接收缓冲区(第一缓冲区)中将数据读出,并缓存在用户接收缓冲区(第三缓冲区),待数据包接收完全后再进行处理。要发送的数据包先保存在用户发送缓冲区(第四缓冲区),串口驱动模块204会检查用户发送缓冲区,并将用户发送缓冲区中的数据读出,缓存在二级发送缓冲区(第二缓冲区)内。串口的硬件发送中断服务程序在收到发送中断信号后,会从二级发送缓冲区中将部分数据读出,写入串口硬件发送缓冲区进行发送。
另外,该系统中可进一步包括:通用异步收发器206,连接在串口驱动模块204与蓝牙芯片202之间,用于将从蓝牙芯片202发送过来的数据流转发至串口驱动模块204,以及将从串口驱动模块204发送过来的数据流转发至蓝牙芯片202。并且,蓝牙芯片202内部的串口仿真协议层与基带芯片执行串口功能的通用异步收发器(UART)206相连,从而建立了与基带芯片进行串口通信的通道。
其中,RFComm协议是串行仿真协议,是蓝牙协议栈的一部分,位于蓝牙协议栈中核心协议层之上。
串口驱动模块204利用串口操作函数对通用异步收发器206进行控制。上述串口操作函数实现的功能包括:打开串口、配置串口参数、关闭串口、读串口参数、写串口参数、清除串口缓冲区、以及设置回调函数或信号。串口驱动模块204能够通过读写基带芯片的相关寄存器、设置互斥量和定时器等来实现多种串口操作功能,并保证串口数据收发的连续性和完整性。在将部分功能封装之后,可以提供上述的一系列串口操作函数。
而上述应用层模块包括:人机界面实现模块、状态控制模块、数据收发模块、对象交换(OBEX)协议实现模块、以及连接信息管理功能模块。
其中,由于蓝牙文件传输采用的是OBEX协议,应用层模块需要实现OBEX协议数据包的构造、解析和收发状态控制等功能。OBEX协议的具体实现方式可参照OBEX协议规范,这里不再赘述。
另外,对于连接信息管理,由于蓝牙设备可以同时和多个远端蓝牙设备建立连接,所以应用层模块需要管理本地蓝牙设备的多个连接。
两个蓝牙设备之间最多只能存在一个异步非连接链路(Asynchronous Connection-less Link,ACL)连接,而且每个蓝牙设备的地址都是唯一的,所以一个连接的两端蓝牙设备的地址就可以标记这条连接。对于应用层模块,只需要记录本地端口号和远端蓝牙设备地址,即可标志与远端蓝牙设备的一个连接。
综上所述,借助于本发明的技术方案,能够在不提供可以支持蓝牙协议族的Socket函数集的终端平台上实现蓝牙文件的传输。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种蓝牙文件传输系统,其特征在于,包括:
蓝牙芯片,用于实现蓝牙无线通讯功能,并构造符合预定规范的串口,将数据流经由所述串口发送至串口驱动模块,以及接收所述串口驱动模块经由所述串口发送过来的数据流;以及
所述串口驱动模块,位于基带芯片侧,用于将来自所述蓝牙芯片的数据流发送至基带芯片侧的应用层模块,以及将来自所述应用层模块的数据流发送到所述蓝牙芯片。
2.根据权利要求1所述的系统,其特征在于,所述串口驱动模块进一步包括:
缓冲区,用于对所述蓝牙芯片与所述串口驱动模块之间的数据流、以及所述串口驱动模块与所述应用层模块之间的数据流进行缓存。
3.根据权利要求2所述的系统,其特征在于,所述缓冲区包括:
第一缓冲区,用于缓存从所述蓝牙芯片发送至所述串口驱动模块的所述数据流;
第二缓冲区,用于缓存从所述串口驱动模块发送至所述蓝牙芯片的所述数据流。
4.根据权利要求3所述的系统,其特征在于,所述缓冲区进一步包括:
第三缓冲区,用于缓存从所述串口驱动模块发送至所述应用层模块的数据流;
第四缓冲区,用于缓存从所述应用层模块发送至所述串口驱动模块的数据流。
5.根据权利要求1所述的系统,其特征在于,进一步包括:
通用异步收发器,连接在所述串口驱动模块与所述蓝牙芯片之间,用于将从蓝牙芯片发送过来的所述数据流转发至所述串口驱动模块,以及将从所述串口驱动模块发送过来的所述数据流转发至所述蓝牙芯片。
6.根据权利要求1至5中任一项所述的系统,其特征在于,所述串口驱动模块利用串口操作函数对所述通用异步收发器进行控制。
7.根据权利要求6所述的系统,其特征在于,所述串口操作函数实现的功能包括:打开串口、读串口参数、写串口参数、关闭串口、读取接收到的数据、写入要发送的数据、清除串口缓冲区、以及设置回调函数或信号。
8.根据权利要求1至5中任一项所述的系统,其特征在于,所述预定规范为RS-232规范。
9.根据权利要求1至5中任一项所述的系统,其特征在于,所述应用层模块包括:人机界面实现模块、状态控制模块、数据收发模块、对象交换协议实现模块、以及连接信息管理功能模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101873861A CN101447808A (zh) | 2007-11-27 | 2007-11-27 | 蓝牙文件传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101873861A CN101447808A (zh) | 2007-11-27 | 2007-11-27 | 蓝牙文件传输系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101447808A true CN101447808A (zh) | 2009-06-03 |
Family
ID=40743245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101873861A Pending CN101447808A (zh) | 2007-11-27 | 2007-11-27 | 蓝牙文件传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101447808A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013086806A1 (zh) * | 2011-12-16 | 2013-06-20 | 中兴通讯股份有限公司 | 一种实现近场通信的方法和装置 |
CN105846863A (zh) * | 2016-05-31 | 2016-08-10 | 青岛海信电器股份有限公司 | 一种基于蓝牙的操作方法及设备 |
CN106656276A (zh) * | 2016-12-15 | 2017-05-10 | 北京塞宾科技有限公司 | 一种基于蓝牙音频的k歌方法 |
CN107734002A (zh) * | 2017-09-25 | 2018-02-23 | 西安法士特汽车传动有限公司 | 一种蓝牙数据的接收装置及其方法 |
-
2007
- 2007-11-27 CN CNA2007101873861A patent/CN101447808A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013086806A1 (zh) * | 2011-12-16 | 2013-06-20 | 中兴通讯股份有限公司 | 一种实现近场通信的方法和装置 |
CN105846863A (zh) * | 2016-05-31 | 2016-08-10 | 青岛海信电器股份有限公司 | 一种基于蓝牙的操作方法及设备 |
CN105846863B (zh) * | 2016-05-31 | 2019-07-05 | 青岛海信电器股份有限公司 | 一种基于蓝牙的操作方法及设备 |
CN106656276A (zh) * | 2016-12-15 | 2017-05-10 | 北京塞宾科技有限公司 | 一种基于蓝牙音频的k歌方法 |
CN107734002A (zh) * | 2017-09-25 | 2018-02-23 | 西安法士特汽车传动有限公司 | 一种蓝牙数据的接收装置及其方法 |
CN107734002B (zh) * | 2017-09-25 | 2020-07-17 | 西安法士特汽车传动有限公司 | 一种蓝牙数据的接收装置及其方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2987933B2 (ja) | データネットワーク用インターフェイス | |
CA2670104A1 (en) | Wireless wide area network (wwan) mobile gateway with communication protocol management | |
WO2007010150A3 (fr) | Equipement de reseau pour la tranmission de modules logiciels de controle des terminaux mobiles | |
WO2007005416B1 (en) | Cellphone based vehicle diagnostic system | |
WO2006131669A3 (fr) | Terminal mobile multimodes a selection automatique d'interface de reseau d'acces radio | |
CN101243709B (zh) | 执行无线系统中的诊断 | |
JPH07303283A (ja) | 無線通信システムにおける無線伝送システムのアセンブリ | |
WO2005110006A3 (en) | Method and arrangement device relating to communication network | |
CN102090106A (zh) | 通信系统 | |
CN101447808A (zh) | 蓝牙文件传输系统 | |
CA2547204A1 (en) | Inter-processor parameter management in a multiple-processor wireless mobile communication device operating on a processor specific communication network | |
CN101754481A (zh) | 一种控制多模无线设备切换运行模式的方法及系统 | |
CN103580844A (zh) | 手机软件和基于标准蓝牙耳机接口的外设全双工数字通讯方法 | |
CN104703291A (zh) | 一种基于MiFi的通信方法及相关MiFi | |
CN101785251B (zh) | 共存设备通信 | |
CN109525972A (zh) | 一种通过蓝牙信息控制其他终端的方法、终端及系统 | |
US20050250535A1 (en) | Modular data device | |
CN100456790C (zh) | 一种多功能无线通信装置 | |
EP1577785B1 (en) | Modem sharing device in a PDA phone | |
CN102025763A (zh) | 实现共享上网的系统 | |
CN106374968A (zh) | 无线通信装置及方法 | |
CN101360292A (zh) | 手机中实现单蓝牙支持至少两个sim卡功能互换的方法及系统 | |
KR101866419B1 (ko) | 오디오 통신용 무전장비를 이용한 디지털 데이터의 무전 시스템 | |
KR20080025914A (ko) | 이동통신 단말기에 구비된 지그비 심카드를 통해 데이터를송수신하는 시스템 및 방법 | |
JP2000023230A (ja) | 遠隔保守システム及び遠隔保守方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20090603 |