打印

数据打包与解包

[复制链接]
2796|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wrainp|  楼主 | 2008-4-6 15:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
mohanwei| | 2008-4-6 15:26 | 只看该作者

你用到过一遍就知道了……

使用特权

评论回复
板凳
平常人| | 2008-4-6 15:34 | 只看该作者

没有清晰的概念,就要看源程序,岂不是越看越晕吗?

使用特权

评论回复
地板
wrainp|  楼主 | 2008-4-6 15:37 | 只看该作者

程序


协议将主要数据分割成一定格式的数据,并增加一些额外的信息(用于纠错),这个过程叫打包;在接收端协议去掉这些额外信息,只留下初始信息,这个过程叫解包。


这是我找到概念。
想通过程序来理解理解啊~~

使用特权

评论回复
5
平常人| | 2008-4-6 15:55 | 只看该作者

这个描述也太抽象了,基本等于什么都没说,初学者很难体

如果你是处于这个层次上,拿一个程序给你看你会更晕的,还是找一个具体的通信协议研究一下为好,如USB协议、802.11的协议等,也可以找一本介绍OSI协议的书看。

使用特权

评论回复
6
wrainp|  楼主 | 2008-4-6 16:06 | 只看该作者

协议...

我不是专门要搞通信。那具体一点吧。

在单片机串口通信中,要接收一个数据包,比如:

AA 05 00 00 00 AF

我是不是通过串口调试助手发6个字节就可以?

然后单片机接收后到接收缓存区读取,要对每个字节做判断的话,是不是要读

一个数据就和准确数据比较一下?然后做出相应的动作?可不可以全部读取完

后再分别做比较?

返回数据包给PC机表示正确,可以用返回1来表示吗?

使用特权

评论回复
7
mohanwei| | 2008-4-7 15:48 | 只看该作者

自己定义的,怎么定义都可以……

使用特权

评论回复
8
wrainp|  楼主 | 2008-4-7 17:44 | 只看该作者

谢谢

   问题解决了,大概明白了
呵呵

使用特权

评论回复
9
as4781| | 2017-1-11 10:04 | 只看该作者
。。。。。。。。。。

使用特权

评论回复
10
hgjinwei| | 2017-1-13 12:41 | 只看该作者
打包,就是把货物(想要传输的数据)装到包装盒(组装成特定格式的协议包);
反之,解包,就是将货物从包装盒中取出(去掉协议数据,得到想要传输的数据);

比如想要传输 00 01 02 03
协议格式为 SOH | LEN | DATA | CS | EXT
那么,打包就是 00 01 02 03 => SOH 04 00 01 02 03 CS EXT
解包就是 SOH 04 00 01 02 03 CS EXT => 00 01 02 03

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

31

主题

79

帖子

1

粉丝