查看“Microduino W5500网络(二)/zh”的源代码
←
Microduino W5500网络(二)/zh
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{| style="width: 800px;" |- | ==目的== 本教程将教大家如何使用DHCP服务器自动配置网络参数,使你的Microduino自动获取IP地址。 ==设备== *'''[[Microduino-Core/zh]]''' *'''[[Microduino-USBTTL/zh]]''' *'''[[Microduino-W5500/zh]]''' *'''[[Microduino-RJ45/zh]]''' *其他硬件设备 **USB数据连接线 一根 ==DHCP== 通常情况下,在本地网络中,你可以找到一个DHCP(Dynamic Host Configuration Protoco,动态主机配置协议,是一个局域网的网络协议,使用UDP协议工作)服务器,作用是给一个内部网络设备自动分配网络参数(IP地址、掩码、网关及DNS)。 简单意义上讲,它的工作原理是这样的: 需要一个IP地址的设备(客户端),发送一个'''DISCOVERY'''广播数据包(这个数据包将到达设备所在的整个网络),“发现”可用的DHCP服务器; 如果一个或多个DHCP服务器可用,它们应答一个'''OFFER'''包,“建议”发出请求的客户端设置可用的IP地址; 客户选择所提供的IP地址,并向对应服务器发送一个'''REQUEST'''数据包,要求允许使用该地址; 建议设置这个ip地址的服务器,发回一个'''ACK'''包来确认IP地址关联。 [[File:DHCPShow.jpg|600px|center|thumb]] 幸运的是我上面所说的获取IP地址的过程已经在dhcp.cpp 库文件为我们实现:在接下来的页面中,我要编写一个简单的例子来使用DHCP服务。 ==原理图== *Microduino-W5500 *Microduino-RJ45 *Microduino-Core *Microduino-FT232R 层层堆叠,再插上网线。 如下图所示: [[File:MicroduinoW5500Show.jpg|600px|center|thumb]] ==程序== ==调试== 步骤一:首先需要确保你的IDE中有_02_Microduino_Ethernet_WIZ库,如果没有下载放到你的IDE的libraries文件夹中,重启IDE。 步骤二:如果你的IDE的libraries文件夹中还有之前的Ethernet库的话,需要删除掉,因为之前的Ethernet是根据W5100协议编写的。 然后需要改动一下_02_Microduino_Ethernet_WIZ文件以使库函数与Microduino-W5500模块的引脚对应: 先找到_02_Microduino_Ethernet_WIZ库中的utility文件夹里的w5100.h 把代码中的 #define wiz_cs_pin 8 //CS_PIN 改为 #define wiz_cs_pin 10 //CS_PIN 就可以了。 步骤三:解释一下代码: // start the Ethernet connection: Serial.println("Trying to get an IP address using DHCP"); if (Ethernet.begin(mac) == 0) { Serial.println("Failed to configure Ethernet using DHCP"); // initialize the ethernet device not using DHCP: #if defined(WIZ550io_WITH_MACADDRESS) Ethernet.begin(ip, gateway, subnet); #else Ethernet.begin(mac, ip, gateway, subnet); #endif } 以上代码先用DHCP分配IP地址,如果没有分配成功测按着事先定义好的IP地址进行配置 步骤四:下载代码并编译通过。 步骤四:如果没其他问题的话,你应该可以ping通你的Microduino了。 [[File:MicroduinoW5500DHCP1.jpg|600px|center|thumb]] ==结果== 如果你可以查看你的DHCP服务器(通常在我们的路由器的DHCP客户端中可以找到),你将看到连接了一个新的设备 ==视频== |}
返回至
Microduino W5500网络(二)/zh
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
Welcome
首页
创客大赛
大赛详情
3D打印
安装月球车
图形化编程
操控月球车
升级月球车
编程工具下载
软件下载
Arduino
Processing
Mixly
Scratch
模块套件
Microduino 102
mCookie 102
mCookie 202
mCookie 302
IBC
其他
应用套件
四轴飞行器
平衡车
小车CUBE
音乐播放器
刷卡音乐播放器
wifi气象站
彩虹音乐触摸灯
分贝检测仪
迎门汇报
LED点阵时钟
LED点阵屏幕
硬件
mCookie
Sensor
Microduino
MicroWrt
MicroNux
MicroRobot-Core
MicroRobot-CoreESP
ideaBoard
ideaBox
MicroMV
MicroAI
帮助
常见问题
帮助
工具
链入页面
相关更改
特殊页面
页面信息