文章 ID: 000080568 内容类型: 故障排除 上次审核日期: 2021 年 08 月 27 日

当无法找到 DHCP 服务器或超时,为什么 NicheStack 默认 IP 地址会被错误地分配?

环境

BUILT IN - ARTICLE INTRO SECOND COMPONENT
说明

重新定义宏,用于指派在Nios® II 工具版本 8.0 中更改的默认 IP 地址,从而导致错误分配默认 IP 地址。   此错误影响设计 简单插槽服务器Web 服务器的示例。   要解决安装Nios II工具中的这一问题,您必须通过以下步骤修改这些项目的模板文件:

 

1) 找到您的Nios II安装版本 8.0:找到您安装Nios II的位置。   根目录的默认路径通常为 Windows 工作站上的C:\altera\80\nios2eds。

2) 查找子文件夹 软件  在上面提到的目录中,进入 示例\软件 目录。   此目录包含所有Nios II软件模板。

3) 修改web_server项目的文件network_utilities.c:   找到web_server目录,并在文本编辑器network_utilities.c打开文件。   找到IP4_ADDR 宏,并修改它以包含一组额外的家长端组"("和")",从 htonl"函数函数结束到函数调用结束之后。 

 

该函数的正交版本大致如下所示:

 

#define IP4_ADDR(ipaddr,a、b、c、d)ipaddr = \

    htonl((alt_u32)(a &0xff) << 24) |(alt_u32)(b & 0xff) << 16) |\

          (alt_u32)(c & 0xff) << 8) |(alt_u32)(d & 0xff))

 

应用修复程序后,函数应该类似:

 

#define IP4_ADDR(ipaddr,a、b、c、d)ipaddr = \

    htonl((alt_u32)(a &0xff)

          (alt_u32)(c & 0xff) << 8) |(alt_u32)(d & 0xff)))

 

完成此操作后,保存并关闭该文件。

 

4) 修改simple_socket_server项目的文件network_utilities.c:重复上面列出的步骤。

 

执行这些步骤后,您下次重新生成 web_serversimple_socket_server 项目,其中包括此修复并正确运行。

 

(注:如果您已经通过模板生成了软件项目,您可以修改位于项目应用程序文件夹 中的 network_utilities.c的本地副本。   按照第 3 步(上文)中的说明操作,然后重新构建应用程序。)

相关产品

本文适用于 1 产品

英特尔® 可编程设备

本页面上的内容是原始英文内容的人工翻译与计算机翻译的组合。我们提供此内容是为了您的便利并且仅供参考,未必完整或准确。如果本页面的英文版与翻译版之间存在任何冲突,应以英文版为准。 查看此页面的英语版本。