一种蓝牙数据发送方法、系统及蓝牙收发器与流程

文档序号:12690932阅读:248来源:国知局
一种蓝牙数据发送方法、系统及蓝牙收发器与流程
本发明属于蓝牙通信
技术领域
,尤其涉及一种蓝牙数据发送方法、系统及蓝牙收发器。
背景技术
:公知地,蓝牙通信采用2.4GHz频段实现数据传输,而2.4GHz频段作为各国共同的ISM频段,无线局域网、WiFi、ZigBee等无线网络均工作在此频段,因此,蓝牙数据在传输过程中,容易受到干扰,甚至,微波炉的正常使用也会对2.4GHz频段产生一定的影响。现有技术中,蓝牙通信采用重传机制来抗干扰。在该机制下,若蓝牙数据在传输过程中受到干扰而引起数据出错,则接收方会请求发送方重传出错的数据报文来恢复。但若传输距离较远,重传过程有可能会出现断线和数据无法通信状况,抗干扰性较差,无法提供更远的传输距离。技术实现要素:本发明实施例的目的在于提供一种蓝牙数据发送方法,旨在解决现有蓝牙数据传输采用重传机制来抗干扰,抗干扰性较差,无法提供更远的传输距离的问题。本发明实施例是这样实现的,一种蓝牙数据发送方法,所述方法包括以下步骤:采用线性分组码(n,k)编码方法,对待发送的蓝牙数据源进行编码,得到编码数据;对编码数据调制后,发送到蓝牙网络。本发明实施例的另一目的在于提供一种蓝牙数据接收方法,所述方法包括以下步骤:从蓝牙网络获取编码数据,对编码数据解调;采用与发送端的线性分组码(n,k)编码方法对应的线性分组码(n,k)译码方法,对解调后的数据进行译码,并实现检错及纠错。本发明实施例的另一目的在于提供一种蓝牙数据发送系统,所述系统包括:编码器,用于采用线性分组码(n,k)编码方法,对待发送的蓝牙数据源进行编码,得到编码数据;调制器,用于对所述编码器得到的所述编码数据调制后,发送到蓝牙网络。本发明实施例的另一目的在于提供一种蓝牙数据接收系统,所述系统包括:解调器,用于从蓝牙网络获取编码数据,对编码数据解调;纠错模块,用于采用与发送端的线性分组码(n,k)编码方法对应的线性分组码(n,k)译码方法,对所述解调器解调后的数据进行译码,并实现检错及纠错。本发明实施例的另一目的在于提供一种蓝牙收发器,所述蓝牙收发器包括如上所述的蓝牙数据发送系统、以及如上所述的蓝牙数据接收系统。本发明提供的蓝牙数据发送方法及系统、蓝牙数据接收方法及系统以及蓝牙收发器采用线性分组编/译码方法作为蓝牙数据传输的纠错机制,而线性分组编/译码方法属于一种前向纠错编/译码方法,可以在无需重发的情况下,检测出有限个错码,并加以纠正,从而减少了数据重发的次数,提升了通信质量,相对于现有的重发机制,提高了抗干扰能力,并提升了通信距离。附图说明图1是本发明实施例一提供的蓝牙数据传输方法的流程图;图2是本发明实施例一中、对待发送的蓝牙数据源进行编码,得到编码数据的步骤的一种详细流程图;图3是本发明实施例一中、对待发送的蓝牙数据源进行编码,得到编码数据的步骤的另一种详细流程图;图4是本发明实施例二提供的蓝牙数据发送方法的流程图;图5是本发明实施例三提供的蓝牙数据接收方法的流程图;图6是本发明实施例四提供的蓝牙数据发送系统的结构图;图7是本发明实施例四中、编码器的一种结构图;图8是本发明实施例四中、编码器的另一种结构图;图9是本发明实施例五提供的蓝牙数据接收系统的结构图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。针对现有技术存在的问题,本发明提供了一种蓝牙数据传输方法,该方法采用线性分组码编/译码方法作为蓝牙数据传输的纠错机制。以下将结合实施例详细说明:实施例一本发明实施例一提供了一种蓝牙数据传输方法,如图1所示,包括以下步骤:S11:采用线性分组码(n,k)编码方法,对待发送的蓝牙数据源进行编码,得到编码数据,对该编码数据调制后,发送到蓝牙网络。其中的线性分组码(n,k)编码方法及对应的线性分组码(n,k)译码方法属于一种前向纠错编/译码方法,可以在无需重发的情况下,检测出有限个错码,并加以纠正。在线性分组码(n,k)编码方法中,将待发送的蓝牙数据源作为信息码分成若干组,然后为每一组码附加若干位监督码元,得到若干码组,码组中,监督码元和信息码之间满足线性变换关系。这种编码称为分组码,分组码一般用(n,k)形式表示。其中,k是每一码组中信息码的位数,n是每一码组的长度,每一码组中,监督码元位数r=n-k,监督码元的作用是在接收端实现检错及纠错。由于蓝牙协议本身定义了一些纠错机制,故而实施例一中,需要进行编码传输的待发送的蓝牙数据源是指:A、对于经典蓝牙(BasicRate,BR)技术,其基本速率的数据包所包括的数据有访问码(AccessCode)、数据头(Header)和负载(Payload),其增强速率的数据包所包括的数据有访问码(AccessCode)、数据头(Header)、保护间隔(Guard)、同步序列(Sync)、增强速率负载(Enhanceddataratepayload)和负载尾(Trailer),待发送的蓝牙数据源主要是负载(Payload)和增强速率负载(Enhanceddataratepayload)中的数据,特别是基于蓝牙协议未采用任何纠错机制的数据;B、对于蓝牙低功耗(BluetoothLowEnergy,BLE)技术,其数据包所包括的数据有前同步码(Preamble)、存取地址(AccessAddress)、协议数据单元(PDU)、循环冗余校验(CRC),待发送的蓝牙数据源主要是协议数据单元(PDU)中的数据,特别是基于蓝牙协议未采用任何纠错机制的数据。在一种情况下,如图2所示,步骤S11中,对待发送的蓝牙数据源进行编码,得到编码数据的步骤包括以下步骤:S111:将待发送的蓝牙数据源以k比特为一个数据单位进行分组,得到若干信息组。S112:采用线性分组码(n,k)编码方法,对信息组进行编码,得到相应的码字。码字包括了k比特的信息值以及附加在信息值后的n-k比特的校验值,该校验值作为监督码元用以实现检错及纠错。S113:在码字后补充一位奇偶校验位,得到相应的编码数据。举例来说,若线性分组码(n,k)编码方法采用BCH(n,k)码编码方法,且BCH(n,k)码编码方法为BCH(7,4)码编码方法,则首先,将待发送的蓝牙数据源以4比特为一个数据单位进行分组,得到若干信息组。之后,采用BCH(7,4)码编码方法对每一信息组分别进行编码,得到相应的7比特的码字,该7比特的码字自带1比特的前向纠错。之后,在每一信息组对应的7比特的码字后,增加一位奇偶校验位,构成8比特的编码数据。如下表以增加偶校验位为例,示出了BCH(7,4)码编码后的码字结构:信息值BCH校验值偶校验位00000000000101110010110100111010010011100101100101100011011101001000101110011100101001101011000111000101110100101110100011111111这样,在将8比特的编码数据发送给接收端后,在译码后,可检测出信息值是否正确,若信息值出现1比特的错误,可对错误进行定位并纠正,而无需重传,从而相对于现有的重传机制,提高了抗干扰能力,并提升了通信距离。在另一种情况下,如图3所示,步骤S11中,对待发送的蓝牙数据源进行编码,得到编码数据的步骤包括以下步骤:S114:对待发送的蓝牙数据源中的每一比特位进行扩展,将比特位0扩展为k个0,将比特位1扩展为k个1。S115:将扩展后的数据以k比特为一个数据单位进行分组,得到若干信息组。S116:采用线性分组码(n,k)编码方法,对信息组进行编码,得到相应的码字。码字包括了k比特的信息值以及附加在信息值后的n-k比特的校验值,该校验值作为监督码元用以实现检错及纠错。S117:在码字后补充一位奇偶校验位,得到相应的编码数据。举例来说,若线性分组码(n,k)编码方法采用BCH(n,k)码编码方法,且BCH(n,k)码编码方法为BCH(7,4)码编码方法,则首先,对待发送的蓝牙数据源中的每一比特位进行扩展,将比特位0扩展为4个0,将比特位1扩展为4个1。例如,若待发送的蓝牙数据源1010,则扩展后为1111000011110000。之后,将待发送的蓝牙数据源以4比特为一个数据单位进行分组,得到若干信息组,这样,每一信息组为0000或1111。之后,采用BCH(7,4)码编码方法对每一信息组分别进行编码,参照上表,得到相应的7比特的码字,该7比特的码字为0000000或1111111。之后,在每一信息组对应的7比特的码字后,增加一位奇偶校验位,构成8比特的编码数据,该8比特的编码数据为00000000或11111111。这样,在将8比特的编码数据发送给接收端后,在译码后,可检测出扩展后的信息值是否正确,若扩展后的信息值出现错误,可对扩展恢复后的相应的比特位直接进行纠正,而无需重传。相对于前一种情况,后一种情况可精确纠正待发送的蓝牙数据源中出现错误的每一位,例如,若待发送的蓝牙数据源为1010,BCH(n,k)码编码方法为BCH(7,4)码编码方法,若采用前一种情况,则可纠正1010中出现的一位错误,对于其它位错误无法纠错,而若采用后一种情况,则可对1010中每一出现错误的比特位进行纠错,抗干扰能力更强,进一步提升了通信距离。当然,实施例一中,线性分组码(n,k)编码方法还可采用除BCH(n,k)码编码方法之外的其它的线性分组码(n,k)编码方法,而BCH(n,k)码编码方法可选择BCH(7,4)码编码方法、BCH(15,5)码编码方法或其它。其中,BCH(7,4)码编码方法能纠正1个随机独立差错,BCH(15,5)码编码方法能纠正3个随机独立差错。S12:从蓝牙网络获取编码数据,对编码数据解调,之后采用与线性分组码(n,k)编码方法对应的线性分组码(n,k)译码方法,对解调后的数据进行译码,并实现检错及纠错。例如,若线性分组码(n,k)编码方法采用BCH(n,k)码编码方法,则对应的线性分组码(n,k)译码方法采用BCH(n,k)码译码方法。译码后,根据监督码元,可实现对信息码的检错及纠错。本发明实施例一提供的蓝牙数据传输方法采用线性分组编/译码方法作为蓝牙数据传输的纠错机制,而线性分组译码方法属于一种前向纠错编/译码方法,可以在无需重发的情况下,检测出有限个错码,并加以纠正,从而减少了数据重发的次数,提升了通信质量,相对于现有的重发机制,提高了抗干扰能力,并提升了通信距离。特别的,线性分组编码方法采用BCH(n,k)码编码方法,BCH(n,k)码编码方法相对于其它的线性分组码编码方法,纠错能力强,构造方便,编码简单,不仅可以对突发性错误进行检错及纠错,还可以对随机差错进行检错及纠错,特别适用于蓝牙数据传输。进一步地,还可对待发送的蓝牙数据源中的每一比特位进行扩展后,再进行线性分组码(n,k)编码,以实现对待发送的蓝牙数据源中的每一比特位的精确纠错,进一步增强抗干扰能力,提升通信距离。实施例二本发明实施例二提供了一种蓝牙数据发送方法,如图4所示,包括以下步骤:S21:采用线性分组码(n,k)编码方法,对待发送的蓝牙数据源进行编码,得到编码数据。实施例二中,线性分组码(n,k)编码方法可采用BCH(n,k)码编码方法或其它的线性分组码(n,k)编码方法,且BCH(n,k)码编码方法可选择BCH(7,4)码编码方法、BCH(15,5)码编码方法或其它。在一种情况下,步骤S21的具体步骤如实施例一中步骤S111至步骤S113所述,不赘述。在另一种情况下,步骤S21的具体步骤如实施例一中步骤S114至步骤S117所述,不赘述。S22:对编码数据调制后,发送到蓝牙网络。实施例三本发明实施例三提供了一种蓝牙数据接收方法,如图5所示,包括以下步骤:S31:从蓝牙网络获取编码数据,对编码数据解调。S32:采用与发送端的线性分组码(n,k)编码方法对应的线性分组码(n,k)译码方法,对解调后的数据进行译码,并实现检错及纠错。例如,若线性分组码(n,k)编码方法采用BCH(n,k)码编码方法,则对应的线性分组码(n,k)译码方法采用BCH(n,k)码译码方法。译码后,根据监督码元,可实现对信息码的检错及纠错。实施例四本发明实施例四提供了一种蓝牙数据发送系统,如图6所示,包括:编码器1,用于采用线性分组码(n,k)编码方法,对待发送的蓝牙数据源进行编码,得到编码数据;调制器2,用于对编码器1得到的编码数据调制后,发送到蓝牙网络。实施例四中,线性分组码(n,k)编码方法可采用BCH(n,k)码编码方法或其它的线性分组码(n,k)编码方法,且BCH(n,k)码编码方法可选择BCH(7,4)码编码方法、BCH(15,5)码编码方法或其它。在一种情况下,如图7所示,编码器1可包括:第一分组模块11,用于将待发送的蓝牙数据源以k比特为一个数据单位进行分组,得到若干信息组;第一编码模块12,用于采用线性分组码(n,k)编码方法对第一分组模块11得到的信息组进行编码,得到相应的码字,码字包括了k比特的信息值以及附加在信息值后的n-k比特的校验值,该校验值作为监督码元用以实现检错及纠错;第一补位模块13,用于在第一编码模块12得到的码字后补充一位奇偶校验位,得到相应的编码数据。在另一种情况下,如图8所示,编码器1可包括:扩展模块14,用于对待发送的蓝牙数据源中的每一比特位进行扩展,将比特位0扩展为k个0,将比特位1扩展为k个1;第二分组模块15,用于将扩展模块14扩展后的数据以k比特为一个数据单位进行分组,得到若干信息组;第二编码模块16,用于采用线性分组码(n,k)编码方法对第二分组模块15得到的信息组进行编码,得到相应的码字,码字包括了k比特的信息值以及附加在信息值后的n-k比特的校验值,该校验值作为监督码元用以实现检错及纠错;第二补位模块17,用于在第二编码模块16得到的码字后补充一位奇偶校验位,得到相应的编码数据。实施例五本发明实施例五提供了一种蓝牙数据接收系统,如图9所示,包括:解调器3,用于从蓝牙网络获取编码数据,对编码数据解调;纠错模块4,用于采用与发送端的线性分组码(n,k)编码方法对应的线性分组码(n,k)译码方法,对解调器3解调后的数据进行译码,并实现检错及纠错。实施例六本发明实施例六提供了一种蓝牙数据传输系统,包括如实施例四所述的蓝牙数据发送系统、以及如实施例五所述的蓝牙数据接收系统,不赘述。实施例七本发明实施例七提供了一种蓝牙收发器,包括如实施例六所述的蓝牙数据传输系统,不赘述。本发明提供的蓝牙数据传输方法及系统、蓝牙数据发送方法及系统、蓝牙数据接收方法及系统以及蓝牙收发器是采用线性分组编/译码方法作为蓝牙数据传输的纠错机制,而线性分组编/译码方法属于一种前向纠错编/译码方法,可以在无需重发的情况下,检测出有限个错码,并加以纠正,从而减少了数据重发的次数,提升了通信质量,相对于现有的重发机制,提高了抗干扰能力,并提升了通信距离。特别的,线性分组编/译码方法采用BCH(n,k)码编/译码方法,BCH(n,k)码编/译码方法相对于其它的线性分组编/译码方法,纠错能力强,构造方便,编码简单,不仅可以对突发性错误进行检错及纠错,还可以对随机差错进行检错及纠错,特别适用于蓝牙数据传输。进一步地,还可对待发送的蓝牙数据源中的每一比特位进行扩展后,再进行线性分组码(n,k)编码,以实现对待发送的蓝牙数据源中的每一比特位的精确纠错,进一步增强抗干扰能力,提升通信距离。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来控制相关的硬件完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1