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

文档序号:8258407阅读:来源:国知局
及D7放置在与第一字节中具有相同标记D所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第四个字节;可以提取所述第二字节组中与EO具有相同标记E的剩余数据位为El、E2、E3、E4、E5、E6及E7,将E1、E2、E3、E4、E5、E6及E7放置在与第一字节中具有相同标记E所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第五个字节;可以提取所述第二字节组中与H)具有相同标记F的剩余数据位为F1、F2、F3、F4、F5、F6及F7,将F1、F2、F3、F4、F5、F6及F7放置在与第一字节中具有相同标记F所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第六个字节;可以提取所述第二字节组中与GO具有相同标记G的剩余数据位为G1、G2、G3、G4、G5、G6及G7,将Gl、G2、G3、G4、G5、G6及G7放置在与第一字节中具有相同标记G所在字节的第I数据位至第7数据位上,至此,得到数据还原后的第七个字节。
[0091]对于数据长度为12字节的数据包,可以参考对前7个字节的处理方法处理得到后五个数据还原后的字节。此外,当第一识别符为I时,可以参考该数据传输方法将提取的第一字节的第I数据位至第7数据位,将第I数据位至第7数据位放置在第一识别符标识的7个字节中的第7数据位上,然后提取第二字节中与第一字节中标记相同的数据位,将第二字节中与第一字节中具有相同标记的数据位作为与第一字节标记相同的数据位所属字节的第O数据位至第6数据位上,得到数据还原后的字节,本发明在此不作赘述。
[0092]3033、删除第一字节组中的第I个第一字节及第二字节组中的前7个第二字节,得到新的第一字节组和新的第二字节组。
[0093]得到新的第一字节组和新的第二字节组之后,返回步骤3031,直至第一字节组和第二字节组为空。
[0094]304,根据还原得到的多个字节的数据进行相应的操作。
[0095]本发明实施方式相对于现有技术而言,上位机对下位机打包得到的标记编号及整理后的数据包进行解包,得到数据还原后的数据,然后再根据还原后的数据进行相应的操作,该数据传输方法对数据长度无要求,此外只在数据头处利用第一识别符和第二识别符标识每个字节中数据的特点,可以克服数据传输方法中不能使用十六进制数进行传输的问题,因此,该数据传输方法能够灵活的进行数据传输。
[0096]本发明第三实施方式提供一种下位机50,如图5所示,该下位机50包括:
[0097]标记单元501,用于对传输数据的每个字节中的数据位进行标记及编号,所述每个字节的8个数据位具有相同的标记及由O至7的不同编号。
[0098]处理单元502,用于以7个字节为单位对所述标记单元标记的传输数据进行处理。
[0099]发送单元503,用于将数据包发送给上位机,所述数据包由第一字节组和第二字节组打包形成,所述第一字节组由多个所述第一字节组成,所述第二字节组由多个所述第二字节组成。
[0100]如图6所示,所述处理单元502包括以下子单元:
[0101]提取子单元5021,用于顺序提取所述7个字节中编号为n的数据位,所述η为大于或等于O且小于或等于7的整数,将所述顺序提取的数据位依次填充到第一字节的第I数据位至第7数据位。
[0102]η可以为O或7。
[0103]获取子单元5022,用于根据所述7个字节的每个字节中剩余的数据位得到7个第二字节的第I数据位至第7数据位,所述第二字节与所述第一字节的一个数据位一一对应。
[0104]第一填充子单元5023,用于在所述第一字节的第O数据位填充第一识别符,所述第一识别符用于标识所述第一字节中的第I数据位至第7数据位为在所述7个字节中顺序提取的编号为η的数据位。
[0105]第二填充子单元5024,用于在所述第二字节的第O数据位填充第二识别符,所述第二识别符用于标识所述第二字节中的数据位为与所述第一字节中标记相同的数据位所属字节的剩余数据位。
[0106]所述第一识别符可以为1,所述第二识别符可以为0,或所述第一识别符可以为0,所述第二识别符可以为I。
[0107]本发明实施方式相对于现有技术而言,标记单元对传输数据的每个字节中的数据位进行标记及编号,处理单元以7个字节为单位提取每个字节中相同位置的数据与新的第一识别符组成第一字节,将每个字节中剩余的7个字节与第二识别符组成第二字节,然后发送单元对第一字节和第二字节打包后的数据进行发送。该数据传输方法对数据长度无要求,此外只在数据头处利用第一识别符和第二识别符标识每个字节中数据的特点,可以克服数据传输方法中不能使用十六进制数进行传输的问题,因此,该数据传输方法能够灵活的进行数据传输。
[0108]本发明第四实施方式提供另一种下位机50,如图7所示,第四实施方式与第三实施方式大致相同,主要区别之处在于:所述下位机50还包括:转换单元504,用于在标记单元对传输数据的每个字节中的数据位进行标记及编号之前,将多个端口发送的数据转换成符合上位机处理要求的十六进制的数据。
[0109]转换单元将传输数据转换为符合上位机处理要求的数据格式,进行后续的数据处理。
[0110]本发明第五实施方式提供一种上位机80,如图8所示,该上位机80包括:
[0111]接收单元801,用于接收下位机发送的数据包。
[0112]解压单元802,用于解压所述接收单元接收的数据包,得到第一字节组和第二字节组,所述第一字节组由多个第一字节组成,所述第二字节组由多个第二字节组成,以所述第一字节组中的第I个第一字节和所述第二字节组中的前7个第二字节为单位进行数据还原。
[0113]操作单元803,用于所述上位机根据所述第一字节组和所述第二字节组进行数据还原得到的多个字节的数据进行相应的操作。
[0114]如图9所示,所述解压单元802包括以下子单元:
[0115]第一处理子单元8021,用于提取所述第一字节组中的第I个第一字节的第I数据位至编号为7的数据位,将所述第I数据位至编号为7的数据位放置在第一识别符标识的7个字节的数据位上,所述第一识别符位于所述第I个第一字节的编号为O的数据位,所述第一识别符用于标识所述第一字节中的第I数据位至编号为7的数据位为在所述7个字节中顺序提取的编号为η的数据位。
[0116]第二处理子单元8022,用于对所述第二字节组中的前7个第二字节分别提取与所述第一字节中标记相同的数据位,并将分别提取的与所述第一字节中标记相同的数据位分别放置在第二识别符标识的所述7个字节的剩余数据位上,得到完整的所述7个字节,所述第二识别符位于所述第二字节的编号为O的数据位,所述第二识别符用于标识所述第二字节中的数据位为与所述第一字节中标记相同的数据位所属字节的剩余数据位。
[0117]删除子单元8023,用于删除所述第一字节组中的第I个第一字节及所述第二字节组中的前7个第二字节,得到新的第一字节组和新的第二字节组,返回第一处理子单元,直至所述第一字节组和所述第二字节组为空。
[0118]本发明实施方式相对于现有技术而言,上位机的解压单元对下位机打包得到的标记编号及整理后的数据包进行解包,得到数据还原后的数据,然后操作单元再根据还原后的数据进行相应的操作,该数据传输方法对数据长度无要求,此外只在数据头处利用第一识别符和第二识别符标识每个字节中数据的特点,因此,该数据传输方法能够灵活的进行数据传输。
[0119]值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。各个物理单元的工作原理可以参考方法实施例中的叙述,本发明在此不再赘述。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
[0120]本领域的普通技术人员可以理解,上述各实施方式是
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1