一种点对点的红外通讯方法及系统与流程

文档序号:12728875阅读:347来源:国知局
一种点对点的红外通讯方法及系统与流程

本发明涉及红外通讯领域,特别是涉及一种点对点的红外通讯方法及系统。



背景技术:

目前市场上存在的红外通讯协议主要有两类,一类是用于红外遥控器的传统红外通信协议,常见的有NEC协议、RC5、RC6等。以NEC协议为例,NEC编码的每一帧由引导码、地址码和数据码组成。如图1a所示,把地址码和数据码取反是为了加强数据的正确性。引导码及数据码的编码定义如图1b所示。从图1b可知,这种红外通信的每一帧时间较长,空中速率只有几十个字节每秒,速率很慢,不能高速传输。另一类是IrDA(Infrared Data Association,红外数据组织),该组织规定的红外数据传输的标准IrDA,用于设备之间的数据通信,传输速率为2400bps到115200bps,传输范围1m,传输半角度为15度到30度。这种协议的缺点是通信距离比较短,角度比较小,元器件比较贵。



技术实现要素:

本发明实施方式主要解决的技术问题是提供一种点对点的红外通讯方法及系统,能够实现红外的高速通讯,并保证数据传输的可靠性,此外,还能提高红外通讯的距离和增大红外覆盖的角度,且成本最低化。

为解决上述技术问题,本发明实施例提供一种点对点的红外通讯方法,包括:

红外发送端获取待发送的信息数据,根据预设的校验方法确定所述信息数据的校验码,再将所述信息数据和校验码按照预设的帧信息格式编制成软编码帧后发射出去,其中,预设的帧信息格式包括起始位+数据位+校验位+结束位;

红外接收端接收所述红外发送端发射的软编码帧,当红外接收端接收到起始位时,启动接收当前软编码帧的信息数据和校验码,当红外接收端接收到结束位时,停止接收当前软编码帧;

红外接收端根据校验码和预设的检验方法验证接收的信息数据是否正确,如果正确,则根据接收的信息数据进行处理,如果不正确,则丢弃当前软编码帧信息。

为解决上述技术问题,本发明实施例还提供一种点对点的红外通讯系统,包括:

红外发送端,用于获取待发送的信息数据,根据预设的校验方法确定所述信息数据的校验码,再将所述信息数据和校验码按照预设的帧信息格式编制成软编码帧后发射出去,其中,预设的帧信息格式包括起始位+数据位+校验位+结束位;

红外接收端,用于接收所述红外发送端发射的软编码帧,当红外接收端接收到起始位时,启动接收当前软编码帧的信息数据和校验码,当红外接收端接收到结束位时,停止接收当前软编码帧;根据校验码和预设的检验方法验证接收的信息数据是否正确,如果正确,则根据接收的信息数据进行处理,如果不正确,则丢弃当前软编码帧信息。

本发明实施方式的有益效果是:区别于现有技术的情况,本发明实施例在提高红外通讯传输速率的情况下,用校验码保证了数据传输的可靠性。此外,在红外发送端和红外接收端,使用独立的红外发送管和独立的红外接收管,能提供红外通信举例和增大红外覆盖角度,因此,本发明具有成本低、空中传输时间短、通信距离远、角度大的优点。

附图说明

图1a是现有技术中NEC红外协议帧数据的组成示意图;

图1b是图1a中NEC协议的编码定义示意图;

图2是本发明实施例提供的一种点对点的红外通讯方法的流程图;

图3是本发明实施例提供的每帧信息的数据格式示意图;

图4是本发明实施例提供的数据0和数据1的一种编码定义示意图;

图5是本发明实施例提供的一种点对点的红外通讯系统的硬件结构图。

具体实施方式

本发明实施例提供一种点对点的红外通讯方法,如图2所示为本发明实施例提供的一种点对点的红外通讯方法的流程图,包括:

步骤S101,红外发送端获取待发送的信息数据,根据预设的校验方法确定所述信息数据的校验码,再将所述信息数据和校验码按照预设的帧信息格式编制成软编码帧后发射出去,其中,预设的帧信息格式包括起始位+数据位+校验位+结束位。

具体的,预设的校验方法包括奇偶校验、全值校验、CRC校验(Cyclic Redundancy Check,循环冗余校验)等其他适用于通信领域的校验方法。如采用奇偶校验,则校验码的值取决于数据位中所有信息数据1的个数,如果该个数为奇数,则校验码为1,若该个数为偶数,则校验码为0;如采用全值校验,则校验码为数据位中每位信息数据的和。如图3所示为红外发送端和红外接收端传递的每一帧信息的格式,包括起始位+数据位+校验位+结束位。其中,起始位用来指示当前帧的开始位置,数据位用来存放待发送的信息数据,校验位用来存放待发送的信息数据的校验码,结束位用来指示当前帧的结束位置。

一般情况下,红外发送端和红外接收端采用20KHZ-60KHZ的载波对软编码帧进行调制和解调,每个载波周期为1/f微秒,其中,f为载波频率,其载波占空比大于等于1/10且小于等于1/2。当然,为了达到更快的通信速度,也可以采用更高频率的载波进行调制和解调,但是需要配置更优的放大电路和MCU(Microcontroller Unit,微控制单元)。优选地,红外发送端和红外接收端采用57.6KHZ的载波进行调制和解调,载波周期为17.36微秒,占空比为1/2,其中,高电平为8.68微秒,低电平为8.68微秒。实际应用中,位0和位1可以根据需要进行定义,如,位0定义为3-8个有载波的电平,位1定义为3-8个无载波的低电平。优选地,定义位0为6个有载波的电平,位1为6个无载波的低电平,各占104.16微秒。如图4所示是本发明实施例提供的数据0和数据1的一种编码定义示意图。相对于采用其他频率的载波,采用57.6KHZ的载波具有速度比较快,并且可以方便调制出19200dps和9600dps的波特率,19200dps和9600dps是比较常规的串口通信速率,方便调试和解码,占空比为1/2,信号会比较强,通信距离更远的有益效果。而采用6个载波的电平来定义位0和位1,可以调整出常规的9600dps的波特率,这样定义区别比较明显,可以速度比较快,而且减少误码率,并且可以直接使用逻辑分析仪调试和MCU进行解码,其实质就相当于一个红外通信的串口。

步骤S102,红外接收端接收所述红外发送端发射的软编码帧,当红外接收端接收到起始位时,启动接收当前软编码帧的信息数据和校验码,当红外接收端接收到结束位时,停止接收当前软编码帧。

步骤S103,红外接收端根据校验码和预设的检验方法验证接收的信息数据是否正确,如果正确,则根据接收的信息数据进行处理,如果不正确,则丢弃当前软编码帧信息。

在一个通讯周期内,有一个起始位和一个结束位,用来指示当前帧的开始位置和结束位置。当红外发送端和红外接收端之间无通讯发生时,红外发送端会发射持续的高电平到红外接收端;当红外发送端向红外接收端发射信号进行通讯时,首先会发射一个起始信号,该起始信号是一个从高电平到低电平的跳变信号,用以提示红外接收端接收到该起始信号后,启动对当前软编码帧的数据接收,并作为解码的开始端。紧接着,红外发送端将发射数据位和校验位,最后为结束位。结束位的结束信号与起始信号类似,是一个从低电平到高电平的跳变信号,用以提示红外接收端接收到该结束信号时,停止对当前软编码帧的接收,并作为解码的结束端。校验位存放用来采用预设的校验方法对数据位上发送的数据计算所得的校验码。如一个34位的数据包有1个起始位,27个数据位,5个校验位,1个结束位,其发送所需的时间为104us*34=2536us,即空中传输的速度为7.6kb/s。由于该通讯方法加入了校验码,数据的准确性也得到了保证。

为了提高红外通信的距离和覆盖的范围,在硬件上,红外发射端使用独立的红外发射管;红外接收端也使用独立的红外接收管,如图5所示。优选地,使用独立的光敏二极管加红外前置放大器的方式。采用这种方式,可以自主选择红外接收管的性能,满足远距离和大角度的通信需求。常规的遥控器的红外接收头不能使用独立的红外接收头和设计放大电路,所以不能控制接收的灵敏度和角度等。

区别于现有技术的情况,本发明实施例在提高红外通讯传输速率的情况下,用校验码保证了数据传输的可靠性。此外,在红外发送端和红外接收端,使用独立的红外发送管和独立的红外接收管,能提供红外通信举例和增大红外覆盖角度,因此,本发明实施例具有成本低、空中传输时间短、通信距离远、角度大的优点。

本发明实施例还提供的一种点对点的红外通讯系统,包括:

红外发送端,用于获取待发送的信息数据,根据预设的校验方法确定所述信息数据的校验码,再将所述信息数据和校验码按照预设的帧信息格式编制成软编码帧后发射出去,其中,预设的帧信息格式包括起始位+数据位+校验位+结束位;

红外接收端,用于接收所述红外发送端发射的软编码帧,当红外接收端接收到起始位时,启动接收当前软编码帧的信息数据和校验码,当红外接收端接收到结束位时,停止接收当前软编码帧;根据校验码和预设的检验方法验证接收的信息数据是否正确,如果正确,则根据接收的信息数据进行处理,如果不正确,则丢弃当前软编码帧信息。

如图5所示,红外发送端包括发送端MCU、驱动电路和红外发射管,其中,发送端MCU与驱动电路连接,驱动电路再与独立的红外发射管进行连接。发送端MCU将待发送的信息数据按照预设的帧信息格式编制成软编码帧后调制成电信号,控制驱动电路驱动红外发射管将电信号转变为光信号发射出去,即发射红外光线。红外接收端包括接收端MCU、放大电路和红外接收管,其中,接收端MCU与放大电路连接,放大电路再与红外接收管进行连接。优选地,红外接收管为独立的光敏二极管。红外接收端的光敏二极管接收到红外发送端发射的红外线后将光信号转换为电信号,并通过放大电路进行放大,输出到接收端MCU进行解码。发送端MCU和接收端MCU可以是任意的通用MCU,如stm8s或者AVR的单片机。

为了提高红外通信的距离和覆盖的范围,本发明实施例采用独立的红外发射管和独立的红外接收管,优选地,使用独立的光敏二极管加红外前置放大器的方式。采用这种方式,可以自主选择红外接收管的性能,满足远距离和大角度的通信需求。常规的遥控器的红外接收头不能使用独立的红外接收头和设计放大电路,所以不能控制接收的灵敏度和角度等。

具体的,预设的校验方法包括奇偶校验、全值校验、CRC校验(Cyclic Redundancy Check,循环冗余校验)等其他适用于通信领域的校验方法。如采用奇偶校验,则校验码的值取决于数据位中所有信息数据1的个数,如果该个数为奇数,则校验码为1,若该个数为偶数,则校验码为0;如采用全值校验,则校验码为数据位中每位信息数据的和。如图3所示为红外发送端和红外接收端传递的每一帧信息的格式,包括起始位+数据位+校验位+结束位。其中,起始位用来指示当前帧的开始位置,数据位用来存放待发送的信息数据,校验位用来存放待发送的信息数据的校验码,结束位用来指示当前帧的结束位置。

一般情况下,红外发送端和红外接收端采用20KHZ-60KHZ的载波对软编码帧进行调制和解调,每个载波周期为1/f秒,其中,f为载波频率,其载波占空比大于等于1/10且小于等于1/2。当然,为了达到更快的通信速度,也可以采用更高频率的载波进行调制和解调,但是需要配置更优的放大电路和MCU。优选地,红外发送端和红外接收端采用57.6KHZ的载波进行调制和解调,载波周期为17.36微秒,占空比为1/2,其中,高电平为8.68微秒,低电平为8.68微秒。实际应用中,位0和位1可以根据需要进行定义,如,位0定义为3-8个有载波的电平,位1定义为3-8个无载波的低电平。优选地,定义位0为6个有载波的电平,位1为6个无载波的低电平,各占104.16微秒。如图4所示是本发明实施例提供的数据0和数据1的一种编码定义示意图。相对于采用其他频率的载波,采用57.6KHZ的载波具有速度比较快,并且可以方便调制出19200dps和9600dps的波特率,19200dps和9600dps是比较常规的串口通信速率,方便调试和解码,占空比为1/2,信号会比较强,通信距离更远的有益效果。而采用6个载波的电平来定义位0和位1,可以调整出常规的9600dps的波特率,这样定义区别比较明显,可以速度比较快,而且减少误码率,并且可以直接使用逻辑分析仪调试和MCU进行解码,其实质就相当于一个红外通信的串口。

在一个通讯周期内,有一个起始位和一个结束位,用来指示当前帧的开始位置和结束位置。当红外发送端和红外接收端之间无通讯发生时,红外发送端会发射持续的高电平到红外接收端;当红外发送端向红外接收端发射信号进行通讯时,首先会发射一个起始信号,该起始信号是一个从高电平到低电平的跳变信号,用以提示红外接收端接收到该起始信号后,启动对当前软编码帧的数据接收,并作为解码的开始端。紧接着,红外发送端将发射数据位和校验位,最后为结束位。结束位的结束信号与起始信号类似,是一个从低电平到高电平的跳变信号,用以提示红外接收端接收到该结束信号时,停止对当前软编码帧的接收,并作为解码的结束端。校验位存放用来采用预设的校验方法对数据位上发送的数据计算所得的校验码。如一个34位的数据包有1个起始位,27个数据位,5个校验位,1个结束位,其发送所需的时间为104us*34=2536us,即空中传输的速度为7.6kb/s。由于该通讯方法加入了校验码,数据的准确性也得到了保证。

区别于现有技术的情况,本发明实施例在提高红外通讯传输速率的情况下,用校验码保证了数据传输的可靠性。此外,在红外发送端和红外接收端,使用独立的红外发送管和独立的红外接收管,能提供红外通信举例和增大红外覆盖角度,因此,本发明实施例具有成本低、空中传输时间短、通信距离远、角度大的优点。

以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1