【问题标题】:How to install µIP library on an embedded device如何在嵌入式设备上安装 µIP 库
【发布时间】:2014-04-11 19:17:44
【问题描述】:

我目前正在使用 µIP TCP/IP 库,用于嵌入式系统。我的问题很简单:我已经下载了库的源代码,但是如何在我的设备上安装它?我意识到我必须构建库,然后将其链接到我正在使用的 C 文件。基本上,我正在尝试在带有 ATMEL AT91SAM9G20 处理器的 FOX G20 V 嵌入式板(带有 no OS)上构建这个库。是否有任何有用的提示/链接可以让我在设备上构建库。作为奖励,如果有人知道如何修改库以特定于该平台以进行以太网通信,那将非常有帮助。

【问题讨论】:

  • 答案将取决于您的目标平台、操作系统(如果有)以及您构建库的方式。需要更多细节。
  • @Clifford 该平台是一个带有 ARM 处理器的 FOX 板。我不太清楚我如何构建库是什么意思,但它是 µIP 版本 0.9。
  • “ARM”并没有把它缩小多少,“FOX board”也没有一个以上的范围。零件号或链接会有所帮助,但更重要的是,您上面有操作系统吗?理想情况下,您应该通过编辑和改进问题来回答,而不是在 cmets 中添加信息。
  • 你为什么不使用v1.0?我快速浏览了一下,它似乎被广泛记录;我会从那里开始。

标签: embedded tcp-ip micro-ip


【解决方案1】:

该库似乎已包含在Contiki 操作系统中,但也可作为独立库使用。您也可以考虑 lwIP 最初来自同一作者,但它本身就是一个积极开发的开源项目。

本质上,该库并没有像这样“安装”,而是简单地编译并链接到您的应用程序代码。假设您的目标没有操作系统或简单的 RTOS 内核,因此您使用托管的交叉开发工具链,您通常会从源代码构建库(任何库 - 这不是特定的 µIP)作为 @ 987654323@,然后将其链接到您的应用程序代码以创建单片应用程序映像,然后将其加载到目标的 ROM。也可以像其他任何源代码一样直接编译源代码并将其链接到您的应用程序,而无需创建中间静态库 - 但这会延长您的应用程序构建时间,这可能会在开发过程中成为大型项目的问题。但是在这种情况下,µIP(查看了文档)有许多 compile-time 配置选项,如果您构建静态库,这些选项将得到修复;因此,如果您设想这些事情经常发生变化,直接在您的应用程序项目中包含源代码可能会更简单。

毫无疑问,您还必须编写、编译和链接特定于平台的设备驱动程序,以允许库在您的硬件上工作。我查看了库文档,并定义了设备驱动程序接口。

在您担心集成第三方库之前,您可能需要更一般地熟悉嵌入式开发过程。

【讨论】:

  • '我只是做一个“scp”并将其复制到设备上吗?' - 如果只是.. :)
  • @MartinJames :确实,John 似乎还没有参与嵌入式开发过程,还没有提出这样一个明显幼稚的问题。
  • 非常感谢 Clifford 的详细回复。我知道我必须编写和编译平台特定的设备驱动程序以允许库在硬件上工作,但那时我也遇到了困难。我正在使用某个处理器(ARM AT91SAM9G20),并且我在文档中查找了有关用于以太网连接的寄存器地址(这是我必须添加的,对吗​​?)。但是我不确定如何为这样的实现添加一个 c 文件,以及在 µIP 库源代码中的何处添加这个 c 文件。
  • 另外,您有关于如何构建库并将其链接到目标的教程吗? (正如你所说,我对嵌入式开发非常不熟悉)。
  • 添加驱动代码的位置或方式无关紧要;查找和解析模块间链接是链接器的工作。
猜你喜欢
  • 1970-01-01
  • 2014-06-06
  • 2015-12-03
  • 1970-01-01
  • 2018-06-03
  • 1970-01-01
  • 2021-01-31
  • 2023-03-10
  • 1970-01-01
相关资源
最近更新 更多