当前位置: 首页 > wzjs >正文

网站出现的的问题网络营销策略

网站出现的的问题,网络营销策略,网页制作工具按其制作方式,网站开发竞聘报告1、LWIP介绍 LWIP 是瑞典计算机科学院(SICS)的 Adam Dunkels 等开发的一个小型开源的 TCP/IP 协议栈,是 TCP/IP的一种实现方式。 LWIP 是轻量级 IP 协议,有无操作系统的支持都可以运行。 LWIP 实现的重点是在保持TCP 协议主要功能的基础上减少对 RAM 的占…

1、LWIP介绍

   LWIP 是瑞典计算机科学院(SICS) Adam Dunkels 等开发的一个小型开源的 TCP/IP 协议栈,是 TCP/IP的一种实现方式。 LWIP 是轻量级 IP 协议,有无操作系统的支持都可以运行。 LWIP 实现的重点是在保持TCP 协议主要功能的基础上减少对 RAM 的占用,它只需十几 KB RAM 40K 左右的 ROM 就可以运行,这 使 LWIP 使

2、硬件搭建

硬件平台采用PCIe-403信号处理板,该板卡上有两片FPGA,一片为VU13P,另一片为ZYNQ。千兆网口是挂到ZYNQ上的,故使用PS跑LWIP协议栈。PCIE-403的原理框图如下:

PS外挂的以太网PHY芯片,采用裕太微电子的YT8531SH。YT8531C是高度集成的物理层芯片(以太网收发器),符合 10Base-T 100Base-TX 1000Base-T IEEE802.3 标准,提供了所有必要的物理层功能。 YT8531 采用最先进的 DSP 技术和模拟前端( AFE),实现了交叉检测和自动校正、极性校正、自适应均衡、串音消除、回声消除、定时恢复和纠错等功能,以提供10Mbps 100Mbps 1000Mbps 的强大传输和接收能力。

4、硬件平台搭建

1:构建zynq核,双击核心打开后配置Perpheral I/O Pins,

2:PCIE403选择enet0网口,一点要注意勾选MDIO,

3:使用bank1 需要选择LVCOMS1.8V,后续选项需要选择fast

      1. 回环测试代码
        1. 回环主代码

工程回环测试代码位于打开工程后main主函数下面的lwip_INIT函数内部。

在函数内部可以对IP地址和端口号进行配置。

        1. 配置ip相关

LWIP_DHCP此处为设置静态IP和DHCP,IP4_ADDR是设置地址的宏。

    init_platform();

#if LWIP_IPV6==0

#if LWIP_DHCP==1

    ipaddr.addr = 0;

    gw.addr = 0;

    netmask.addr = 0;

#else

    IP4_ADDR(&ipaddr,  192, 168,   1, 10);

    IP4_ADDR(&netmask, 255, 255, 255,  0);

    IP4_ADDR(&gw,      192, 168,   1,  1);

#endif

#endif

    print_app_header();

    lwip_init();

#if (LWIP_IPV6 == 0)

    if (!xemac_add(echo_netif, &ipaddr, &netmask,

                      &gw, mac_ethernet_address,

                        PLATFORM_EMAC_BASEADDR)) {

        xil_printf("Error adding N/W interface\n\r");   return -1;

    }

#else

    if (!xemac_add(echo_netif, NULL, NULL, NULL, mac_ethernet_address,

                        PLATFORM_EMAC_BASEADDR)) {

        xil_printf("Error adding N/W interface\n\r");

        return -1;

    }

    echo_netif->ip6_autoconfig_enabled = 1;

    netif_create_ip6_linklocal_address(echo_netif, 1);

    netif_ip6_addr_set_state(echo_netif, 0, IP6_ADDR_VALID);

    print_ip6("\n\rBoard IPv6 address ", &echo_netif->ip6_addr[0].u_addr.ip6);

#endif

    netif_set_default(echo_netif);

    platform_enable_interrupts();

    netif_set_up(echo_netif);

#if (LWIP_IPV6 == 0)

#if (LWIP_DHCP==1)

    dhcp_start(echo_netif);

    dhcp_timoutcntr = 24;

    while(((echo_netif->ip_addr.addr) == 0) && (dhcp_timoutcntr > 0))

        xemacif_input(echo_netif);

    if (dhcp_timoutcntr <= 0) {

        if ((echo_netif->ip_addr.addr) == 0) {

            xil_printf("DHCP Timeout\r\n");

            xil_printf("Configuring default IP of 192.168.1.10\r\n");

            IP4_ADDR(&(echo_netif->ip_addr),  192, 168,   1, 10);

            IP4_ADDR(&(echo_netif->netmask), 255, 255, 255,  0);

            IP4_ADDR(&(echo_netif->gw),      192, 168,   1,  1);

        }

    }

    ipaddr.addr = echo_netif->ip_addr.addr;

    gw.addr = echo_netif->gw.addr;

    netmask.addr = echo_netif->netmask.addr;

#endif

    print_ip_settings(&ipaddr, &netmask, &gw);

#endif

    start_application();

1:IP4_ADDR():用于初始化 IP 地址、子网掩码和网关地址,只有在使用静态 IP 时才调用。

2:xemac_add():将网络接口添加到 lwIP 的接口列表中,并将指定的 IP 地址、网关、子网掩码与网卡(MAC 地址)绑定,是配置网络的核心函数。

3:netif_set_default():将当前网络接口设置为系统默认的网络接口。

4:netif_set_up():启动网络接口,使其可以正常工作,相当于把网卡设置为“up”状态。

5:dhcp_start():在启用 DHCP 的情况下启动 DHCP 客户端,请求动态分配 IP 地址。

6:xemacif_input():接收网络数据包,是 DHCP 或其他协议正常运行所必需的,在 DHCP 等待阶段用于接收服务器返回的 IP 地址。

7:print_ip_settings():打印当前使用的 IP 地址、子网掩码和网关,方便调试和查看配置结果。

        1.  关键函数解释

1. TcpFastTmrFlag & tcp_fasttmr() 含义:lwIP 的 TCP 协议需要周期性地运行维护任务,比如管理重传、超时等。 tcp_fasttmr() 是lwIP中的 快速定时器函数,需要每一段时间调用一次。 TcpFastTmrFlag由一个定时器中断或定时回调设置为 1。

2. TcpSlowTmrFlag & tcp_slowtmr() :tcp_slowtmr() 是慢速定时器函数。 用于处理超时连接、慢重传等。 通常会在中断或者 xil_timer_handler()中设置这个Flag。

3. xemacif_input(echo_netif);接收来自以太网 MAC 接口的数据包。xemacif_input() 是将以太网接口(EMAC)中接收到的包传递给 lwIP 协议栈处理的函数。echo_netif 是一个 struct netif 类型变量,表示网络接口(如 eth0)。

4. transfer_data();这个是可以自己写的应用层函数,比如 TCP echo 服务器中处理连接、收发数据的逻辑。实现如 tcp_write()、tcp_recv() 等。

        1.  YT8531SH 寄存器读取

LWIP在初始化后在任意地方那个加上此代码就可以查看YT8531寄存器状态。

    for (addr = 0; addr < 31; addr++)

    {

    XEmacPs_PhyRead(xemacpsp, 0, addr, &status);

    xil_printf("  addr = 0x%04x        status =  0x%04x\r\n",addr,status);  

    }

      1. 回环结果测试
        1. 测试工具

串口网络助手。NetAssist。

硬件连接:

需要网线端口与PC端直连即可。

测试表现:

使用网络助手发送数据到板卡,板卡收到后就能回传数据。

http://www.dtcms.com/wzjs/31433.html

相关文章:

  • c 做网站开发东莞优化网站制作
  • 网站后台管理系统毕业论文百度入口的链接
  • 招牌做的好的网站网站推广是什么意思
  • 郑州企业自助建站系统网站和网页的区别
  • 手机网站可以做英文版本吗手机制作网站app
  • 中国住房和城乡建设网网站广州网站排名专业乐云seo
  • weekly做网站推广软文
  • 石家庄建行网站优化大师软件大全
  • wordpress做付费内容郑州seo招聘
  • 怎么做卖外挂网站免费的冬镜seo
  • 专业的外贸行业网站模板最近国际新闻大事
  • 怎么做单页竞价网站app运营
  • 网站开发哪里可做私活厦门关键词优化平台
  • 网站做seo有什么作用广州seo关键词优化费用
  • www网站建设seo是什么意思新手怎么做seo
  • 南山网站建设网络营销策略的定义
  • 政府高度重视门户网站建设的理由提交百度收录
  • 中国广东手机网站建设域名注册平台
  • 网站域名空间租用合同惠州市seo广告优化营销工具
  • 台湾wordpress重庆搜索引擎seo
  • html网站开头怎么做的制作网站的app
  • 武汉网站建设的公司哪家好宁波seo企业推广
  • 沈阳网站建设找德泰诺凡科网免费建站官网
  • 大通县wap网站建设公司网站seo优化建议
  • wordpress 头条主题seo优化排名是什么
  • 陕西网站建设电话站长工具视频
  • b2c电子商务的特点有哪些站长之家的seo综合查询工具
  • 在线免费网站手机百度下载安装
  • 网站免费建百度主页入口
  • 网站建设申请百度热榜