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

网站开发文案wordpress 移动模板

网站开发文案,wordpress 移动模板,秦皇岛网站开发多少钱,安徽网站开发哪家好文章目录 1 前言2 简介2 .1 什么是DHCP#xff1f;2.2 为什么要使用DHCP#xff1f;2.3 DHCP工作原理2.4 DHCP应用场景 3 WIZnet以太网芯片4 DHCP网络设置示例概述以及使用4.1 流程图4.2 准备工作核心4.3 连接方式4.4 主要代码概述4.5 结果演示 5 注意事项6 相关链接 1 前言 … 文章目录 1 前言2 简介2 .1 什么是DHCP2.2 为什么要使用DHCP2.3 DHCP工作原理2.4 DHCP应用场景 3 WIZnet以太网芯片4 DHCP网络设置示例概述以及使用4.1 流程图4.2 准备工作核心4.3 连接方式4.4 主要代码概述4.5 结果演示 5 注意事项6 相关链接 1 前言 随着云计算的推广和普及越来越多的网络设备和服务需要连接到网络这意味着需要更多的IP地址和其他网络配置信息。DHCP服务器可以动态地分配IP地址和其他配置信息简化了网络配置管理提高了网络设备的可用性和效率。 W5100S/W5500是一款集成全硬件 TCP/IP 协议栈的嵌入式以太网控制器同时也是一颗工业级以太网控制芯片。本教程将介绍W5100S/W5500以太网DHCP应用的基本原理、使用步骤、应用实例以及注意事项帮助读者更好地掌握这一技术。 2 简介 2 .1 什么是DHCP DHCP是指动态主机配置协议是一种网络管理协议用于将网际协议地址动态分配给网络上的任何设备或节点以便它们可以使用IP进行通信。DHCP自动化并集中管理这些配置而不是要求网络管理员手动为所有网络设备分配IP地址。DHCP可以在小型本地网络以及大型企业网络上实现。 2.2 为什么要使用DHCP 在IP网络中每个连接Internet的设备都需要分配唯一的IP地址。DHCP使网络管理员能从中心结点监控和分配IP地址。当某台计算机移到网络中的其它位置时能自动收到新的IP地址。DHCP实现的自动化分配IP地址不仅降低了配置和部署设备的时间同时也降低了发生配置错误的可能性。另外DHCP服务器可以管理多个网段的配置信息当某个网段的配置发生变化时管理员只需要更新DHCP服务器上的相关配置即可实现了集中化管理。 总体来看DHCP相比设置静态IP地址带来了如下优势 准确的IP配置IP地址配置参数必须准确并且在处理“ 192.168.XXX.XXX”之类的输入时很容易出错。另外印刷错误通常很难解决使用DHCP服务器可以最大程度地降低这种风险。减少IP地址冲突每个连接的设备都必须有一个IP地址。但是每个地址只能使用一次重复的地址将导致无法连接一个或两个设备的冲突。当手动分配地址时尤其是在存在大量仅定期连接的端点例如移动设备时可能会发生这种情况。DHCP的使用可确保每个地址仅使用一次。IP地址管理的自动化如果没有DHCP网络管理员将需要手动分配和撤消地址。跟踪哪个设备具有什么地址可能是徒劳的因为几乎无法理解设备何时需要访问网络以及何时需要离开网络。DHCP允许将其自动化和集中化因此网络专业人员可以从一个位置管理所有位置。高效的变更管理DHCP的使用使更改地址范围或端点变得非常简单。例如组织可能希望将其IP寻址方案从一个范围更改为另一个范围。DHCP服务器配置有新信息该信息将传播到新端点。同样如果升级并更换了网络设备则不需要网络配置。 2.3 DHCP工作原理 一般步骤 DHCP Client以广播的方式发出DHCP Discover报文请求IP地址。DHCP Server向DHCP Client发送一个DHCP Offer报文提供IP地址和其它网络设置。DHCP Client会向DHCP Server发出一个广播的DHCP Request报文其中包含选中的 DHCP Server的IP地址和需要的IP地址。DHCP Server向DHCP Client响应一个DHCP ACK报文正式下发IP地址及其它网络设置。此时DHCP Client就可以使用这个IP地址了。 2.4 DHCP应用场景 DHCP的应用场景通常集中在需要动态分配IP地址的局域网环境中。例如在大型的办公环境或者学校中由于有大量的网络设备需要连接到网络手动为每个设备分配和管理IP地址会非常麻烦而且容易出错。使用DHCP可以集中管理IP地址的分配提高网络管理员的工作效率减少错误的发生。 3 WIZnet以太网芯片 WIZnet 主流硬件协议栈以太网芯片参数对比 ModelEmbedded CoreHost I/FTX/RX BufferHW SocketNetwork PerformanceW5100STCP/IPv4 MAC PHY8bit BUS, SPI16KB4Max.25MbpsW6100TCP/IPv4/IPv6, MAC PHY8bit BUS, Fast SPI32KB8Max.25MbpsW5500TCP/IPv4, MAC PHYFast SPI32KB8Max 15Mbps W5100S/W6100 支持 8bit数据总线接口网络传输速度会优于W5500。W6100 支持IPV6与W5100S 硬件兼容若已使用W5100S的用户需要支持IPv6可以Pin to Pin兼容。W5500 拥有比 W5100S更多的 Socket数量以及发送与接收缓存。 4 DHCP网络设置示例概述以及使用 4.1 流程图 程序的运行框图如下所示 4.2 准备工作核心 软件 Visual Studio CodeWIZnet UartTool 硬件 W5100SIO模块 RP2040 树莓派Pico开发板 或者 WIZnet W5100S-EVB-Pico开发板Micro USB 接口的数据线TTL 转 USB网线 4.3 连接方式 通过数据线连接PC的USB口主要用于烧录程序也可以虚拟出串口使用 通过TTL串口转USB连接UART0 的默认引脚 RP2040 GPIO0UART0 TX ---- USB_TTL_RXRP2040 GPIO1UART0 RX ---- USB_TTL_TX 使用模块连接RP2040 进行接线时 RP2040 GPIO16 ---- W5100S MISORP2040 GPIO17 ---- W5100S CSRP2040 GPIO18 ---- W5100S SCKRP2040 GPIO19 ---- W5100S MOSIRP2040 GPIO20 ---- W5100S RST 通过PC和设备都通过网线连接路由器LAN口 4.4 主要代码概述 我们使用的是WIZnet官方的ioLibrary_Driver库。该库支持的协议丰富操作简单芯片在硬件上集成了TCP/IP协议栈该库又封装好了TCP/IP层之上的协议我们只需简单调用相应函数即可完成协议的应用。 第一步dhcp_client.c文件中加入对应的.h文件。 第二步定义DHCP配置需要的宏。 第三步网络信息的配置,开启DHCP模式。 第四步编写定时器回调处理函数用于 DHCP 1s滴答定时器处理函数。 第五步主函数先是对串口和SPI的初始化然后写入W5100S的网络配置参数初始化DHCP后主循环开始DHCP获取IP获取到就打印获取到的IP获取次数超过最大获取次数时就使用静态IP。 #include stdio.h #include pico/stdlib.h #include pico/binary_info.h #include hardware/spi.h#include wizchip_conf.h #include bsp_spi.h #include dhcp.h#define ETHERNET_BUF_MAX_SIZE (1024 * 2) #define SOCKET_DHCP 0 #define DHCP_RETRY_COUNT 5wiz_NetInfo net_info {.mac {0x00, 0x08, 0xdc, 0x16, 0xed, 0x2e}, // Define MAC variables.ip {192, 168, 1, 10}, // Define IP variables.sn {255, 255, 255, 0}, // Define subnet variables.gw {192, 168, 1, 1}, // Define gateway variables.dns {8, 8, 8, 8}, // Define DNS variables.dhcp NETINFO_DHCP}; // Define the DNCP mode static uint8_t dhcp_get_ip_flag 0; // Define the DHCP acquisition flag static uint8_t ethernet_buf[ETHERNET_BUF_MAX_SIZE] {0, };/*brief Callback processing after triggering the timer.param Timer struct.return True.*/ bool repeating_timer_callback(struct repeating_timer *t);int main() {wiz_NetInfo get_info;int dhcp_state 0;int count 0;struct repeating_timer timer; // Define the timer structure/*mcu init*/stdio_init_all(); // Initialize the main control peripheralwizchip_initialize(); // spi initialization/*wiznet chip init*/wizchip_setnetinfo(net_info); // Write configuration information/*dhcp init*/add_repeating_timer_ms(1000, repeating_timer_callback, NULL, timer); // Add DHCP 1s Tick Timer handlerDHCP_init(SOCKET_DHCP, ethernet_buf); // DHCP initializationprintf(wiznet chip dhcp example start.\r\n);while (true){dhcp_state DHCP_run(); // Do the DHCP clientswitch (dhcp_state){case DHCP_IP_LEASED: // DHCP resolves the domain name successfullyif (dhcp_get_ip_flag 0){dhcp_get_ip_flag 1;getSHAR(get_info.mac);getIPfromDHCP(get_info.ip);getGWfromDHCP(get_info.gw);getSNfromDHCP(get_info.sn);getDNSfromDHCP(get_info.dns);get_info.dhcp NETINFO_DHCP;/* Network initialize */network_initialize(get_info); // apply from DHCPprint_network_information(get_info); // Read back the configuration information and print itprintf( DHCP leased time : %ld seconds\n, getDHCPLeasetime());}break;case DHCP_FAILED:count;if (count DHCP_RETRY_COUNT) // If the number of times is less than or equal to the maximum number of times, try again{printf( DHCP timeout occurred and retry %d \r\n, count);}else if (count DHCP_RETRY_COUNT) // If the number of times is greater than DHCP fails{printf( DHCP failed \r\n);DHCP_stop(); // Stop processing DHCP protocolnet_info.dhcp NETINFO_STATIC;wizchip_setnetinfo(net_info); // Write configuration informationprint_network_information(get_info); // Read back the configuration information and print it}}} }bool repeating_timer_callback(struct repeating_timer *t) {DHCP_time_handler(); // DHCP 1s Tick Timer handlerreturn true; } 4.5 结果演示 1.打开WIZ UartTool填入参数选择串口对应的COM Port波特率1152008位数据位1位停止位无校验位无流控填完参数后点击open打开。 2.打开串口后按下复位键可以看到串口打印DHCP获取到的信息其中IP为192.168.1.138。 3.通过PC终端PING获取到的IP发现可以PING通所以DHCP成功。 5 注意事项 要获取到动态IP必需将网络结构体配置中dhcp的值改为 NETINFO_DHCP这样才能跑DHCP模式。如果想用WIZnet的W5500来实现本章的示例我们只需修改两个地方即可 ​ (1)在library/ioLibrary_Driver/Ethernet/下找到wizchip_conf.h这个头文件将_WIZCHIP_ 宏定义修改为W5500。 ​ (2)在library下找到CMakeLists.txt文件将COMPILE_SEL设置为ON即可OFF为W5100SON为W5500。 6 相关链接 WIZnet官网 WIZnet官方库链接 本章例程链接 想了解更多评论留言哦
http://wiki.neutronadmin.com/news/159786/

相关文章:

  • 福建省建设执业注册与管理中心网站wordpress插件写js
  • 滨州做网站的公司网站空白页黑链
  • 龙华建网站公司千万别在百度上搜别人的名字
  • 网站如何做问卷调查报告网页设计与网站建设专业
  • 阳山网站seoapp网站建设阿里巴巴
  • 做网站h5.net网站开发教程
  • 网站建设 骏域网站建设专家软件商店电脑版官方下载
  • 网站开发的技术方案重庆观音桥简介
  • 站斧浏览器wordpress更改后台地址
  • 网站建设策划包括哪些内容网络营销的工具和方法
  • 营销网站建设需要多少钱平台网站建设制作
  • 工信部网站备案查询 验证码错误域名服务器有哪些
  • 网站关键词被百度屏蔽怎么办装修风格大全2021新款简约
  • 途牛企业网站建设方案网站seo教材
  • 有口碑的合肥网站建设江苏网站开发公司
  • 做网站前期需求分析收费么湛江企业模板建站
  • 在网站上做的图表怎么放到PPT里面南昌网站设计有限公司
  • 茶陵网站建设做网站容易还是app容易
  • 网站管理更新维护在哪个网站买做性的人
  • 北京小学大兴网站建设营销培训课程内容
  • 企业设计个网站四川省建设厅职称评审网站
  • 百度推广官方网站登录入口深圳龙岗区地图全图
  • 网站前端代码有哪些问题天元建设集团网站
  • 做网站主页图片一般多少m选择建设网站公司要注意什么问题
  • wap开头的网站西安公司网站费用
  • 5元购买已备案域名大连网站排名优化价格
  • 网站怎么做落款10个网站用户体验优化的研究结果
  • 义乌有什么企业网站吗广州移动端网站建设
  • 哈尔滨企业建站系统模板wordpress admin改名
  • 网站分页需要前端做还是后端网站建站 宝