“(SKU:RB-01C016)Arduino 網(wǎng)絡擴展板”的版本間的差異
來自ALSROBOT WiKi
(以“右 ==產(chǎn)品概述== 以W5100為核心的Arduino Ethernet網(wǎng)絡擴展模塊,可以使Arduino成為簡單的Web服務器或...”為內(nèi)容創(chuàng)建頁面) |
|||
(未顯示3個用戶的5個中間版本) | |||
第3行: | 第3行: | ||
以W5100為核心的Arduino Ethernet網(wǎng)絡擴展模塊,可以使Arduino成為簡單的Web服務器或者通過網(wǎng)絡控制讀寫Arduino的數(shù)字和模擬接口等網(wǎng)絡應用??芍苯邮褂肐DE中的Ethernet庫文件便可實現(xiàn)一個簡單Web服務器。同時該版本的支持mini SD卡(TF卡)讀寫,功能強悍,不容錯過!該擴展板采用了可堆疊的設計,可直接插到Arduino上,同時我們的其他擴展板也可以插上去。 | 以W5100為核心的Arduino Ethernet網(wǎng)絡擴展模塊,可以使Arduino成為簡單的Web服務器或者通過網(wǎng)絡控制讀寫Arduino的數(shù)字和模擬接口等網(wǎng)絡應用??芍苯邮褂肐DE中的Ethernet庫文件便可實現(xiàn)一個簡單Web服務器。同時該版本的支持mini SD卡(TF卡)讀寫,功能強悍,不容錯過!該擴展板采用了可堆疊的設計,可直接插到Arduino上,同時我們的其他擴展板也可以插上去。 | ||
==規(guī)格參數(shù)== | ==規(guī)格參數(shù)== | ||
? | + | ===W5100特性=== | |
+ | # 支持SPI接口(SCS、SCLK、MISO、MOSI),接線方便,程序簡單; | ||
+ | # 支持硬件TCP/IP協(xié)議棧,支持TCP,UDP,ICMP,IGMP,IPv4,ARP,PPPoE. | ||
+ | # 內(nèi)嵌10BaseT/100BaseTX以太網(wǎng)物理層; | ||
+ | # 支持自動通信握手(全雙工和半雙工); | ||
+ | # 端口支持3種工作模式(客戶端、服務端、UDP); | ||
+ | # 支持4個獨立端口同時運行; | ||
+ | # 內(nèi)部集成16KBYTE收發(fā)緩存; | ||
+ | # 支持自動極性轉(zhuǎn)換(DMI/MDIX); | ||
+ | ===W5100優(yōu)勢=== | ||
+ | # W5100硬件集成TCP/IP協(xié)議棧、MAC、PHY,減少了用戶代碼量、減輕了CPU的壓力,而相對便宜的ENC28J60只集成MAC和PHY,TCP/IP協(xié)議棧須要用戶在上層代碼中實現(xiàn); | ||
+ | # W5100可以通過SPI接口控制,只須要操作少量的寄存器即可,大量節(jié)約了開發(fā)時間. | ||
+ | # W5100是通過SPI發(fā)指令、數(shù)據(jù)操作寄存器,不同平臺移植W5100的程序更加方便、簡單; | ||
==使用方法== | ==使用方法== | ||
+ | ===接線方法=== | ||
+ | 1.將網(wǎng)絡擴展板與UNO插接在一起,確保引腳連接正常。<br/> | ||
+ | [[文件:wangluokuozhan1.jpg|500px|有框|居中]] | ||
+ | 2.如圖所示連接UNO和PC機,下載代碼到UNO控制器中<br/> | ||
+ | [[文件:wangluokuozhan2.jpg|500px|有框|居中]] | ||
+ | ===例子程序=== | ||
+ | <pre style='color:blue'>/* | ||
+ | Web Server | ||
+ | |||
+ | A simple web server that shows the value of the analog input pins. | ||
+ | using an Arduino Wiznet Ethernet shield. | ||
+ | |||
+ | Circuit: | ||
+ | * Ethernet shield attached to pins 10, 11, 12, 13 | ||
+ | * Analog inputs attached to pins A0 through A5 (optional) | ||
+ | |||
+ | created 18 Dec 2009 | ||
+ | by David A. Mellis | ||
+ | modified 9 Apr 2012 | ||
+ | by Tom Igoe | ||
+ | |||
+ | */ | ||
? | == | + | #include <SPI.h> |
+ | #include <Ethernet.h> | ||
+ | |||
+ | // Enter a MAC address and IP address for your controller below. | ||
+ | // The IP address will be dependent on your local network: | ||
+ | byte mac[] = { | ||
+ | 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; | ||
+ | IPAddress ip(192,168,1,177); | ||
+ | |||
+ | // Initialize the Ethernet server library | ||
+ | // with the IP address and port you want to use | ||
+ | // (port 80 is default for HTTP): | ||
+ | EthernetServer server(80); | ||
+ | |||
+ | void setup() { | ||
+ | // Open serial communications and wait for port to open: | ||
+ | Serial.begin(9600); | ||
+ | while (!Serial) { | ||
+ | ; // wait for serial port to connect. Needed for Leonardo only | ||
+ | } | ||
+ | |||
+ | |||
+ | // start the Ethernet connection and the server: | ||
+ | Ethernet.begin(mac, ip); | ||
+ | server.begin(); | ||
+ | Serial.print("server is at "); | ||
+ | Serial.println(Ethernet.localIP()); | ||
+ | } | ||
+ | |||
+ | |||
+ | void loop() { | ||
+ | // listen for incoming clients | ||
+ | EthernetClient client = server.available(); | ||
+ | if (client) { | ||
+ | Serial.println("new client"); | ||
+ | // an http request ends with a blank line | ||
+ | boolean currentLineIsBlank = true; | ||
+ | while (client.connected()) { | ||
+ | if (client.available()) { | ||
+ | char c = client.read(); | ||
+ | Serial.write(c); | ||
+ | // if you've gotten to the end of the line (received a newline | ||
+ | // character) and the line is blank, the http request has ended, | ||
+ | // so you can send a reply | ||
+ | if (c == '\n' && currentLineIsBlank) { | ||
+ | // send a standard http response header | ||
+ | client.println("HTTP/1.1 200 OK"); | ||
+ | client.println("Content-Type: text/html"); | ||
+ | client.println("Connection: close"); // the connection will be closed after completion of the response | ||
+ | client.println("Refresh: 5"); // refresh the page automatically every 5 sec | ||
+ | client.println(); | ||
+ | client.println("<!DOCTYPE HTML>"); | ||
+ | client.println("<html>"); | ||
+ | // output the value of each analog input pin | ||
+ | for (int analogChannel = 0; analogChannel < 6; analogChannel++) { | ||
+ | int sensorReading = analogRead(analogChannel); | ||
+ | client.print("analog input "); | ||
+ | client.print(analogChannel); | ||
+ | client.print(" is "); | ||
+ | client.print(sensorReading); | ||
+ | client.println("<br />"); | ||
+ | } | ||
+ | client.println("</html>"); | ||
+ | break; | ||
+ | } | ||
+ | if (c == '\n') { | ||
+ | // you're starting a new line | ||
+ | currentLineIsBlank = true; | ||
+ | } | ||
+ | else if (c != '\r') { | ||
+ | // you've gotten a character on the current line | ||
+ | currentLineIsBlank = false; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | // give the web browser time to receive the data | ||
+ | delay(1); | ||
+ | // close the connection: | ||
+ | client.stop(); | ||
+ | Serial.println("client disonnected"); | ||
+ | } | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | 3.將網(wǎng)絡擴展板使用網(wǎng)線與電腦連接<br/> | ||
+ | [[文件:wangluokuozhan3.jpg|500px|有框|居中]] | ||
+ | |||
+ | 4.設置本地計算機的網(wǎng)絡<br/> | ||
+ | [[文件:wangluokuozhan4.jpg|400px|有框|居中]] | ||
+ | |||
+ | 5.設置后W5100網(wǎng)絡擴展板板載的4個LED會亮起,如果沒有請按下復位按鈕<br/> | ||
+ | [[文件:wangluokuozhan5.jpg|400px|有框|居中]] | ||
+ | ===程序效果=== | ||
+ | 1.現(xiàn)在讀出W5100網(wǎng)絡擴展板的IP地址<br/> | ||
+ | [[文件:wangluokuozhan6.jpg|700px|有框|居中]] | ||
+ | |||
+ | 2.通過電腦可以訪問W5100網(wǎng)絡擴展板<br/> | ||
+ | [[文件:wangluokuozhan7.jpg|700px|有框|居中]] | ||
+ | |||
+ | ===其他應用=== | ||
Arduino Ethernet網(wǎng)絡擴展模塊與Arduino UNO 控制器 | Arduino Ethernet網(wǎng)絡擴展模塊與Arduino UNO 控制器 | ||
[[文件:RB-01C0161.jpg|500px|縮略圖|居中]] | [[文件:RB-01C0161.jpg|500px|縮略圖|居中]] | ||
Arduino Ethernet網(wǎng)絡擴展模塊與Arduino MEGA2560控制器 | Arduino Ethernet網(wǎng)絡擴展模塊與Arduino MEGA2560控制器 | ||
? | [[文件:RB- | + | [[文件:RB-01C0163.jpg|500px|縮略圖|居中]] |
+ | |||
==產(chǎn)品相關(guān)推薦== | ==產(chǎn)品相關(guān)推薦== | ||
? | + | [[文件:erweima.png|230px|無框|右]] | |
+ | ===購買地址=== | ||
+ | [http://www.gharee.com/goods-219.html Arduino 網(wǎng)絡擴展板] | ||
+ | ===周邊產(chǎn)品推薦=== | ||
+ | [http://www.gharee.com/goods-221.html Arduino Protoype Shield 原型擴展板 ] | ||
+ | <br/> | ||
+ | [http://www.gharee.com/goods-471.html Arduino GSM 擴展板 Arduino Integrated Antenna 官方原裝進口] | ||
+ | ===相關(guān)問題解答=== | ||
+ | [http://www.makerspace.cn/forum.php?mod=viewthread&tid=2506&highlight=%E7%BD%91%E7%BB%9C%E6%89%A9%E5%B1%95%E6%9D%BF Arduino 網(wǎng)絡擴展板介紹]<br/> | ||
+ | ===相關(guān)學習資料=== | ||
+ | [http://www.makerspace.cn/portal.php 奧松機器人技術(shù)論壇] |
2015年10月19日 (一) 14:54的最后版本
目錄 |
產(chǎn)品概述
以W5100為核心的Arduino Ethernet網(wǎng)絡擴展模塊,可以使Arduino成為簡單的Web服務器或者通過網(wǎng)絡控制讀寫Arduino的數(shù)字和模擬接口等網(wǎng)絡應用??芍苯邮褂肐DE中的Ethernet庫文件便可實現(xiàn)一個簡單Web服務器。同時該版本的支持mini SD卡(TF卡)讀寫,功能強悍,不容錯過!該擴展板采用了可堆疊的設計,可直接插到Arduino上,同時我們的其他擴展板也可以插上去。
規(guī)格參數(shù)
W5100特性
- 支持SPI接口(SCS、SCLK、MISO、MOSI),接線方便,程序簡單;
- 支持硬件TCP/IP協(xié)議棧,支持TCP,UDP,ICMP,IGMP,IPv4,ARP,PPPoE.
- 內(nèi)嵌10BaseT/100BaseTX以太網(wǎng)物理層;
- 支持自動通信握手(全雙工和半雙工);
- 端口支持3種工作模式(客戶端、服務端、UDP);
- 支持4個獨立端口同時運行;
- 內(nèi)部集成16KBYTE收發(fā)緩存;
- 支持自動極性轉(zhuǎn)換(DMI/MDIX);
W5100優(yōu)勢
- W5100硬件集成TCP/IP協(xié)議棧、MAC、PHY,減少了用戶代碼量、減輕了CPU的壓力,而相對便宜的ENC28J60只集成MAC和PHY,TCP/IP協(xié)議棧須要用戶在上層代碼中實現(xiàn);
- W5100可以通過SPI接口控制,只須要操作少量的寄存器即可,大量節(jié)約了開發(fā)時間.
- W5100是通過SPI發(fā)指令、數(shù)據(jù)操作寄存器,不同平臺移植W5100的程序更加方便、簡單;
使用方法
接線方法
1.將網(wǎng)絡擴展板與UNO插接在一起,確保引腳連接正常。
2.如圖所示連接UNO和PC機,下載代碼到UNO控制器中
例子程序
/* Web Server A simple web server that shows the value of the analog input pins. using an Arduino Wiznet Ethernet shield. Circuit: * Ethernet shield attached to pins 10, 11, 12, 13 * Analog inputs attached to pins A0 through A5 (optional) created 18 Dec 2009 by David A. Mellis modified 9 Apr 2012 by Tom Igoe */ #include <SPI.h> #include <Ethernet.h> // Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; IPAddress ip(192,168,1,177); // Initialize the Ethernet server library // with the IP address and port you want to use // (port 80 is default for HTTP): EthernetServer server(80); void setup() { // Open serial communications and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for Leonardo only } // start the Ethernet connection and the server: Ethernet.begin(mac, ip); server.begin(); Serial.print("server is at "); Serial.println(Ethernet.localIP()); } void loop() { // listen for incoming clients EthernetClient client = server.available(); if (client) { Serial.println("new client"); // an http request ends with a blank line boolean currentLineIsBlank = true; while (client.connected()) { if (client.available()) { char c = client.read(); Serial.write(c); // if you've gotten to the end of the line (received a newline // character) and the line is blank, the http request has ended, // so you can send a reply if (c == '\n' && currentLineIsBlank) { // send a standard http response header client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close"); // the connection will be closed after completion of the response client.println("Refresh: 5"); // refresh the page automatically every 5 sec client.println(); client.println("<!DOCTYPE HTML>"); client.println("<html>"); // output the value of each analog input pin for (int analogChannel = 0; analogChannel < 6; analogChannel++) { int sensorReading = analogRead(analogChannel); client.print("analog input "); client.print(analogChannel); client.print(" is "); client.print(sensorReading); client.println("<br />"); } client.println("</html>"); break; } if (c == '\n') { // you're starting a new line currentLineIsBlank = true; } else if (c != '\r') { // you've gotten a character on the current line currentLineIsBlank = false; } } } // give the web browser time to receive the data delay(1); // close the connection: client.stop(); Serial.println("client disonnected"); } }
3.將網(wǎng)絡擴展板使用網(wǎng)線與電腦連接
4.設置本地計算機的網(wǎng)絡
5.設置后W5100網(wǎng)絡擴展板板載的4個LED會亮起,如果沒有請按下復位按鈕
程序效果
1.現(xiàn)在讀出W5100網(wǎng)絡擴展板的IP地址
2.通過電腦可以訪問W5100網(wǎng)絡擴展板
其他應用
Arduino Ethernet網(wǎng)絡擴展模塊與Arduino UNO 控制器
Arduino Ethernet網(wǎng)絡擴展模塊與Arduino MEGA2560控制器
產(chǎn)品相關(guān)推薦
購買地址
周邊產(chǎn)品推薦
Arduino Protoype Shield 原型擴展板
Arduino GSM 擴展板 Arduino Integrated Antenna 官方原裝進口