首頁>科技>

雖然Arduino官方已經停止了對W5100乙太網擴充套件板的更新和支援,但由於其國產化之後有很高的價效比,因此在物聯網專案應用中還有著很大的市場空間。

標準的W5100擴充套件板集成了RJ45標準介面的百兆乙太網口,透過SPI介面和Arduino通訊,可以實現各種標準的乙太網協議(基於TCP或者UDP)。同時,該卡還集成了TF卡(micro-SD)介面,可以TF卡來進行資料儲存,透過Arduino實現資料的持久化儲存。

Arduino Ethernet擴充套件板使用注意事項

按照官方文件介紹,在擴充套件板上標有“INT”標誌的焊點可以連線起來,從而可以接受從W5100發出的中斷事件訊號,但是Ethernet庫不支援此功能,該焊點將W5100的INT中斷引腳連線到了Arduino的引腳2上。

Arduino W5100乙太網擴充套件板透過ICSP介面的SPI匯流排和Arduino進行通訊,這需要佔用Arduino的部分引腳。

Arduino UNO 的引腳10,11,12和13被佔用Arduino Mega的50,51,52和53引腳被佔用由於擴充套件板的SD卡模組和乙太網模組公用匯流排,在UNO和Mega上,引腳10(乙太網)和4(SD卡)被用來進行模組選擇。因此引腳4和10不能再被定義為常規IO引腳使用。Mega的引腳53作為硬體SS引腳,必須被定義為輸出埠,否則擴充套件板可能不能正常工作。

注意因為SD模組和W5100公用SPI匯流排,因此如果要同時使用兩者,在程式設計時必須非常小心地控制應答和時序,否則容易出現衝突和錯誤。如果僅使用其中一個,可以透過訊號引腳顯式指定。

如果僅僅使用SD卡,那麼需要把引腳4配置為輸出並寫入高電平如果僅使用W5100則需要把引腳10配置為輸出並寫入高電平PWR: 紅色指示燈,電源上電即亮LINK: 亮起表示裝置已連線,有訊號傳輸時閃爍FULLD: 工作在百兆全雙工模式下時亮起RX: 收到資料時閃爍TX:發出資料時閃爍Arduino Ethernet擴充套件板上電無法啟動的問題解決

由於Ethernet板啟動時間比Arduino稍晚一點點,因此在系統上電的時候可能存在由於Arduino無法找到W5100而導致W5100無法啟動的情況,需要透過Reset按鈕手動啟動或者透過串列埠連線Arduino來重新啟用W5100。按照官方文件介紹,擴充套件板內建了一個Reset的控制器來保證W5100在上電時可以正常重啟,但這一控制器僅支援Uno主機板而不支援Mega主機板。在實際使用中,採用Mega主機板和W5100共同工作時,確實存在上述問題。

這一問題可透過外接一個RC震盪迴路解決。參考Some Fun with a Cloned Arduino and W5100 Ethernet Shield和Arduino and w5100 Ethernet shield issues兩篇文章給出的解決方案,在W5100的Reset鍵和地之間連線一個220歐姆的電阻和一個220微法的電解電容,在系統上電時W5100會重置一次,從而保證可以可靠上電和工作,該方法實測有效。

在以上文章和相關資料中還列出了一些其他解決方案,但實測時均未能解決該問題。這些方法包括在Reset引腳和地之間連線10納法電容,在Arduino Setup函式開始增加一個delay(50)的延時,以及將Arduino和W5100的reset引腳手工折彎分開,透過一個引腳來複位W5100等等。

16
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 二類電商今日訊息搶先看,魯班禁售品類調整須知