一种下位机、上位机及数据传输方法_3

文档序号:8258407阅读:来源:国知局
O的数据位即所处理的7个字节的起始数据位;该第一识别符可以取1,标识第一字节中的第I数据位至第7数据位为所处理的7个字节的编号为7的数据位,编号为7的数据位即所处理的7个字节的最后一个数据位。该第一识别符的取值应该与步骤1041中η的取值保持一致。
[0066]本实施例中第一识别符可以取0,标识第一字节中的第I数据位至第7数据位为所处理的7个字节的起始数据位。示例的,第一识别符可以取O表示第一字节中AO代表的数据为标记为A的字节中的第O个数据位上的数据。
[0067]1044、在第二字节的第O数据位填充第二识别符。
[0068]第二识别符用于标识所述第二字节中的数据位为与第一字节中标记相同的数据位所属字节的剩余数据位。
[0069]第一识别符与第二识别符的取值是不相等的,当第一识别符为O时,该第二识别符可以取I,标识第二字节中的第I数据位至第7数据位为与所述第一字节中标记相同的数据位所属字节的剩余数据位,即第二字节中的第I数据位至第7数据位为与所述第一字节中标记相同的数据位所属字节的第I数据位至第7数据位;当第一识别符为I时,该第二识别符可以取0,标识第二字节中的第I数据位至第7数据位为与所述第一字节中标记相同的数据位所属字节的剩余数据位,即第二字节中的第I数据位至第7数据位为与所述第一字节中标记相同的数据位所属字节的第O数据位至第6数据位。
[0070]由于本实施例中第一识别符为0,则第二实施例可以取值为1,标识第二字节中的第I数据位至第7数据位为与所述第一字节中标记相同的数据位所属字节的第I数据位至第7数据位。示例的,第二识别符可以取I表示Al、Α2、A3、Α4、Α5、Α6及Α7代表的数据为标记为A的字节中的第O数据位后面的数据,即该字节中第I数据位至第7数据位上的数据。
[0071]对该数据长度为12字节的数据的后5个字节的处理方法可以参考对前7个字节的处理方法及过程,本实施例不再赘述。
[0072]需要说明的是,当处理的字节不够7个时,对于步骤1041得到的第一字节,可以在该第一字节中的空余的数据位中填充0,补充完整该第一字节的第I数据位至第7数据位。后续处理过程与本实施例的过程完全相同。
[0073]105、对处理后的数据进行打包,得到传输数据的数据包。
[0074]由于该数据传输方法适用于大数据的传输,因此,在步骤105之前处理得到的数据为第一字节组和第二字节组,所述第一字节组由多个第一字节组成,所述第二字节组由多个第二字节组成。然后,对该第一字节组和第二字节组进行打包,得到数据包,然后,将该数据包发送给上位机。对该第一字节组和第二字节组进行打包的方法为现有技术,本实施例对此不作赘述。
[0075]本发明实施方式相对于现有技术而言,首先对传输数据的每个字节中的数据位进行标记及编号,然后以7个字节为单位提取每个字节中相同位置的数据与新的第一识别符组成第一字节,将每个字节中剩余的7个字节与第二识别符组成第二字节,然后将第一字节和第二字节打包进行传输。该数据传输方法对数据长度无要求,此外只在数据头处利用第一识别符和第二识别符标识每个字节中数据的特点,可以克服数据传输方法中不能使用十六进制数进行传输的问题,因此,该数据传输方法能够灵活的进行数据传输。
[0076]本发明第二实施方式提供一种数据传输方法,应用于上位机,如图3所示,该数据传输方法包括:
[0077]301、接收下位机发送的数据包。
[0078]该数据包是对第一字节组和第二字节组进行打包得到的。
[0079]302、解压数据包,得到第一字节组和第二字节组。
[0080]所述第一字节组由多个第一字节组成,所述第二字节组由多个第二字节组成。第一字节和第二字节均由8个数据位组成。
[0081]303、对第一字节组和第二字节组进行数据还原。
[0082]如图4所示,以第一字节组中的第I个第一字节和第二字节组中的前7个第二字节为单位进行数据还原,所述数据还原具体包括以下步骤:
[0083]3031、提取第一字节组中的第I个第一字节的第I数据位至第7数据位,将第I数据位至第7数据位放置在第一识别符标识的7个字节的数据位上。
[0084]第一识别符位于所述第I个第一字节的第O数据位,第一识别符用于标识第一字节中的第I数据位至第7数据位为在7个字节中顺序提取的编号为η的数据位。第一字节由第一识别符和第I数据位至第7数据位共8个数据位组成,第一识别符位于该第一字节的第O数据位。对该第一字节进行解析,可以得到第一识别符,由于该数据传输方法在下位机侧是以7个字节为单位进行处理的,因此,对该第一字节进行解析还可以得到第I数据位至第7数据位,该第一识别符用于标识所述第一字节中的第I数据位至第7数据位为7个字节的编号为η的数据位。第一识别符的取值及含义可以参考第一实施例中的相关解释,本实施例在此不作赘述。
[0085]示例的,本实施例假设解析得到第一识别符为0,则第一字节中的第I数据位至第7数据位为所处理的7个字节的起始数据位。假设第一字节中的标记及编号为O、AO、Β0、CO、DO、Ε0、H)及G0,则第一识别符O表示第I数据位至第7数据位AO至GO为所处理的7个字节的编号为O的数据位,即起始数据位。因此,可以将第一字节中AO、B0、CO、DO、E0、FO及GO放置在7个字节的编号为O的数据位上。
[0086]3032、对第二字节组中的前7个第二字节分别提取与第一字节中标记相同的数据位,并将分别提取的与第一字节中标记相同的数据位分别放置在第二识别符标识的7个字节的剩余数据位上,得到完整的7个字节。
[0087]第二识别符位于第二字节的第O数据位,第二识别符用于标识第二字节中的数据位为与第一字节中标记相同的数据位所属字节的剩余数据位。
[0088]第二字节由第二识别符和第I数据位至第7数据位共8个数据位组成,第二识别符位于该第二字节的第O数据位。对该第二字节进行解析,可以得到第二识别符,由于该数据传输方法在下位机侧第二字节中的第I数据位至第7数据位为第一字节中提取编号为η的数据位位后剩余的7个数据位,因此,对该第二字节进行解析还可以得到第I数据位至第7数据位,该第二识别符用于标识所述第二字节中的数据位为与所述第一字节中具有相同标记的数据位所属字节的剩余数据位。第二识别符的取值及含义可以参考第一实施例中的相关解释,本实施例在此不作赘述。
[0089]由于第一识别符和第二识别符是不相等的,第一识别符为0,第二识别符可以为1,则第二字节中的第I数据位至第7数据位为与所述第一字节中编号为η的数据位具有相同标记的数据位所属字节的剩余数据位。假设第二字节中的标记及编号为1、Al、Α2、A3、Α4、Α5、Α6及Α7,则第二识别符I表示第I数据位至第7数据位Al至Α7为与所述第一字节中具有相同标记A的数据位所属字节的剩余数据位,第一字节中标记为A的数据位为AOJIJAl至A7为AO后面的数据位。
[0090]示例的,可以提取所述第二字节组中与AO具有相同标记A的剩余数据位为A1、A2、△3、4435、46及47,将41、4233、4435、46及47放置在与第一字节中具有相同标记八所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第一个字节;可以提取所述第二字节组中与BO具有相同标记B的剩余数据位为B1、B2、B3、B4、B5、B6及B7,将B1、B2、B3、B4、B5、B6及B7放置在与第一字节中具有相同标记B所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第二个字节;可以提取所述第二字节组中与CO具有相同标记C的剩余数据位为Cl、C2、C3、C4、C5、C6及C7,将Cl、C2、C3、C4、C5、C6及C7放置在与第一字节中具有相同标记C所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第三个字节;可以提取所述第二字节组中与DO具有相同标记D的剩余数据位为Dl、D2、D3、D4、D5、D6及D7,将D1、D2、D3、D4、D5、D6
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1