gpt4 book ai didi

c - LwIP 实现

转载 作者:可可西里 更新时间:2023-11-01 02:57:55 32 4
gpt4 key购买 nike

我正在为一个没有操作系统的嵌入式系统 (Zybo) 实现一个 TCP 客户端,我完全是 LwIP 的新手。在谷歌上搜索了一段时间后,我发现了一些关于如何使用它的示例。

我想知道是否有任何方法可以通过它发送 C 结构,是否有可用的示例。服务器是在Linux下的另一 block Zybo板上实现的,它处理许多结构来控制状态机,因此非常关键。

提前致谢。

最佳答案

LwIP 有一个 TCP 堆栈实现,因此它能够(几乎?)常规 TCP 堆栈可以做的所有事情。

当然,它允许您通过套接字发送任意数据。标准堆栈和 LwIP 都没有对序列化(您可能想要的)的任何特定支持。

你需要定义一个协议(protocol)来将你的结构序列化为字符数组,发送这个数组,在另一端接收它并反序列化它。序列化结构的一种方法是所谓的实体序列化 - 只需发送结构的原始内存占用空间并在另一端接收它。这是非常简单、非常快速但非常不可靠的方法——如果同一结构的内存布局在发送方和接收方之间不同怎么办?随着程序的发展,向结构中添加新字段也变得很困难(您总是必须在最后添加它们),并且几乎不可能删除一个字段。

更好的方法是真正了解各种序列化方法并找出最适合您的方法。

关于c - LwIP 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37549186/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com