標籤:arduino nano wiz550io 簡易上網 webserver
我愛Arduino Nano – 這是一個很好外形小巧卻功能齊全的Arduino Uno。然而,當我去將它串連到互連網,所有的乾淨利落小巧也消失在大尺寸的乙太網路盾底下了。
不過,我最近發現了一個更好的,更緊湊的方式給我的nano串連到互連網 – 通過使用WIZnet公司小巧得多(且更便宜)的WIZ550io模組!
如果你想方便串連,你可以找到一個可串連該模組和Arduino Uno的適配器板,但我想保持小巧的子板;通過我的Nano把它們直接連接在一起。然而,如果你沒有適配板,你可以利用相同的方法用來直接連接到一個Uno板。
第一步:零件
這個教程,我使用了如下零件:1個Arduino Nano(或者其他可相容的)1個WIZ550io模組(可以直接從WIZnet買到)1個麵包板(我使用30排的,就夠大了)5 m-m跳線4 f-m跳線
步驟2:串連注意:在連線前,最好首先將WebServer 常式下載到Arduino中,確保其上沒有存在的韌體,不然可能在你的WIZ550io上引起其他問題。1. 將Arduino Nano和WIZ550io模組 放到麵包板上。我將他們背對背擺放(見圖),這樣可以使USB供電線 和 乙太網路線 都容易串連。正中看到的那樣,我的麵包板還餘出一排。2. 串連9個引腳:Arduino – WIZ550io (5 M-M 跳線)
3v3 – J1.8
GND – J1.1
D2 – J2.5 (INT)
D7 – J2.2 (RDY)
D10 – J1.6 (SCS)
(SPI 需要 4 F-M 跳線)
spi.1 – J1.4 (MISO)
spi.3 – J1.5 (SCK aka SCLK)
spi.5 – J2.3 (RST)
spi.4 – J1.3 (MOSI)
注意:spi.2 (VDD) – 不要串連!因為他是5v的,wiz 板需要3.3v的請參考SPI圖,看一下Arduino Nano上的引腳順序。同時,這個板子本身應該是1號引腳有一個數字1.這應該是VIN引腳側最外面的引腳。步驟3:更新乙太網路庫WIZnet模組 使用了一個全新的晶片,需要更新一下庫。不要擔心,你的舊乙太網路板也一樣可以用。1. 下載WIZnet乙太網路庫:https://github.com/Wiznet/WIZ_Ethernet_Library 這有一個按鈕,底部標有“Download ZIP”,可以一鍵下載整包檔案。2. 複製乙太網路檔案夾到Arduino庫檔案夾中 (在Mac上是Documents/Arduino/Libraries)。這將重寫內建乙太網路庫,這是Arduino app的一部分。如果你也需要使用其他乙太網路插板和模組,見“注意”中的內容。注意乙太網路檔案夾有兩個版本,這取決於你的ArduinoIDE的版本。我使用Arduino IDE版本是 1.0.6,所以我從WIZnet檔案夾複製到乙太網路檔案夾的時候,標記為1.0.x3. 在Libraries/Ethernet/utility 檔案夾中,開啟w5100.h並只需修改一處 #define 行(其中3行)取消注釋。我的WIZ550io是這樣的:
//#define W5100_ETHERNET_SHIELD // Arduino Ethernet Shield and Compatibles ...//#define W5200_ETHERNET_SHIELD // WIZ820io, W5200 Ethernet Shield#define W5500_ETHERNET_SHIELD // WIZ550io, ioShield series of WIZnet</p>
4.在同樣的檔案中,(可選) 也取消注釋,這樣板子就能用預先分配的硬體MAC地址了:
#define WIZ550io_WITH_MACADDRESS // Use assigned MAC address of WIZ550io
圖片展示的是我的設定(我使用XCode來編輯檔案,因此格式和顏色都很美觀!)
步驟4:運行一個WebServer並測試!都設定好後,最好測試一下是不是都調對了。感激的是,乙太網路庫包含了一套非常棒的常式。我們就用簡易的WebServer常式就行了。1. 開啟Arduino IDE 並開啟File/Examples/Ethernet 中名為WebServer的常式。2. 如果你用蘋果網路(通過Apple’s Airport wireless hubs),你將需要改一下IP地址,來引起你網路中其他電腦的注意。我使用的:
IPAddress ip(10,0,1,177); // on an Apple wifi network
注意,多數網路大概是不必須的,只要前3個數字匹配你的IP地址就行了。3. 儲存並賦予它一個新名字4. 用網線將WIZ550io連入網路5. 串連Arduino到你的電腦,並跑WebServer常式6. 開啟一個瀏覽器視窗,鍵入你在WebServer常式中設定的IP地址匹配的url。我的例子中是 http://10.0.1.177瀏覽器視窗應該顯示的是一串數字,與每一個類比輸入一一對應。注意我們沒有 串連任何的類比輸入,那些數字會有點隨機。當然如果你感興趣,可以添加一些感應器!
步驟5:注意及參考注意:(a)如果你還有其他的乙太網路插板,在用特殊的插板工作的時候,需要需要修改w5100.h(再用WIZ550io的時候再改回來)。例如,基於乙太網路插板的Wiz5100插板,我將首行取消注釋:
#define W5100_ETHERNET_SHIELD // Arduino Ethernet Shield and Compatibles ...//#define W5200_ETHERNET_SHIELD // WIZ820io, W5200 Ethernet Shield//#define W5500_ETHERNET_SHIELD // WIZ550io, ioShield series of WIZnet
(b)沒有其他注意了參考:更多資訊,請參考:
https://github.com/Wiznet/WIZ_Ethernet_Library (見 ReadMe 檔案)
http://arduino.cc/en/Reference/SPI
http://wizwiki.net/wiki/doku.php?id=osh:ioshield-a:updatelib
http://www.wiznet.co.kr
http://wizwiki.net/wiki/doku.php?id=products:wiz550io:start
原文來自:Instructables
Arduino Nano + WIZ550io = 簡易上網