[求助] 新版Ethernet w5100 r3板,如何自動抓取ip
以前使用舊版的w5100若是使用浮動ip
每次都要重新擷取後
重新輸入重新燒入才能使用
聽說新版的不用手動更新ip
所以我購買了一台新版的w5100
http://www.electronics123.net/amazon/pictures/09026-01b.jpg
請問若我是浮動ip
使用這塊模組
是否有範例code可提供
教我如何系統直接抓取更新ip
省去我每次都要重新燒錄
謝謝!!!! 可以参考IDE里面W5100的DHCP例子,理论上mac地址设置的和你内网的设备mac不冲突,而且是正确的mac地址,那么就能通过DHCP服务自动获得IP地址了。
/*
DHCP-based IP printer
This sketch uses the DHCP extensions to the Ethernet library
to get an IP address via DHCP and print the address obtained.
using an Arduino Wiznet Ethernet shield.
Circuit:
* Ethernet shield attached to pins 10, 11, 12, 13
created 12 April 2011
modified 9 Apr 2012
by Tom Igoe
*/
#include <SPI.h>
#include <Ethernet.h>
// Enter a MAC address for your controller below.
// Newer Ethernet shields have a MAC address printed on a sticker on the shield
byte mac[] = {
0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02 };
// Initialize the Ethernet client library
// with the IP address and port of the server
// that you want to connect to (port 80 is default for HTTP):
EthernetClient client;
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(9600);
// this check is only needed on the Leonardo:
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// start the Ethernet connection:
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
// no point in carrying on, so do nothing forevermore:
for(;;)
;
}
// print your local IP address:
Serial.print("My IP address: ");
for (byte thisByte = 0; thisByte < 4; thisByte++) {
// print the value of each byte of the IP address:
Serial.print(Ethernet.localIP(), DEC);
Serial.print(".");
}
Serial.println();
}
void loop() {
}
板卡自带样例中有DHCP,就属于自动IP匹配.原理是在私有段中逐个找,一直到找到为止. 那這樣的意思
是不是插上浮動ip網路線後
不用設定ip
每次都可以連接使用了 可以了,讀取arduino IDE
可以抓取到,現在的dhcp ip
但我另一個問題是
如果arduino沒接電腦的情況下
要怎麼知道目前抓取的ip是多少
因為我要用手機輸入ip連結到web server 不好意思!前輩!想請教一下!Failed to configure Ethernet using DHCP 是指它讀取不到IP嗎!還是MAC有問題:'(今天剛收到!一直弄不好
:L
页:
[1]