追記(2012/03/24):
なんか急にアクセスが増えてきたので、フォローをしておくと、
http://avr.paslog.jp/article/2361305.html
こんな話もあって、この対策を取ると安定する可能性がある。まだ試せてない。
3.3V系のArduinoとつないで動かす場合に下記の問題が発生しない、という話もある。
その辺をまとめて丸っと検証したいが時間がないなう。
追記(2012/03/30)ArduinoのOfficialEthernetShieldにはWizNet社の W5100 が採用されている。
ココで検証はじめました。
やっぱりなんか怪しい。
W5100のパッケージは0.4mmピッチのQFP80pinである。
私は不器用なので基板を自作する際、0.4mmピッチは実に辛い。
ところでW5100 はSPI接続とバス接続のいずれかが選択できるようになっているが、上記シールドではSPI接続を選択している。
よって実はArduinoとW5100は高々7本のラインでしか接続していない。
しかし0.4mm,80pinものハンダ付けを”強いられているんだ!!”
これは不合理なので同社製の W5200 に乗り換えたい。
こちらはW5100のSPI接続専用版で0.5mmピッチのQFN48pinである。(多少スペックが上がっていたりもする)
QFNである点はイマイチだが0.5mmピッチになり、かつpin数も半分程度になる。
ぜひW5200に乗り換えるべきである。
さて、ここで問題になるのは2点。
・標準ライブラリこそがArduinoの売りであるためEthernetライブラリからはW5100と同等にみえなければならない
・動くか判らんうちから基板をおこすのは怠い
まず後者を金で解決する。こことかここで評価用基板( WIZ820IO )がうっている。
OfficialEthernetShieldと比べると半値以下だ。
そして前者の解決策はここにある。
そう、ベンダー自らArduinoでW5100と同様に使えるようライブラリを提供してくれているのだ。
Downloadタブの中に"Library for Arduino + Ethernet ( IDE ver1.0 )"があるのでこれをDLして所定の位置に展開・上書きすれば良い。
ただしこれを上書きしてしまうと、W5100へのアクセスが出来なくなりそう。
W5100とW5200の切り替えが出来ると良いなぁ、とおもうのでそのうち手を入れて適当に公開することにしよう。
というわけで、SPI系をまるっと接続したら即動いた。 拍子抜け過ぎる。
写真の左、Etherのケーブルが刺さってるコネクタだけのように見えるのがWIZ820IOである。
追記(2012/01/06):
どうも挙動が安定しない。
ExampleのWebServerをそのまま入れて、watchコマンドで5秒に一回取得してみると、1時間ぐらいで死んでしまう。こまった。
オフィシャルの方でも実験してみて再現するならEthernetライブラリの問題。
しないならW5200あるいは入れ替えたW5200用Ethernetライブラリの問題。
追記(2012/01/06):
W5100で同様の実験を行っているが、9時間異常なし。
W5200あるいはW5200用Ethernetライブラリに問題があると見ていいんだろうなぁ。。。ガクリ。
追記(2012/01/07):
丸一日以上異常なし。
W5100は安定しておる。
こんにちは
ReplyDeletettp://www.wiznettechnology.com/Sub_Modules/en/product/Product_Detail.asp?cate1=&cate2=&cate3=&pid=1161
からもらってきますと、w5100.cpp w5100.h の2つのファイルですが、arduino スケッチは XX.ino の様なファイルでなくても組み付けることが出来ますでしょうか?
それではよろしくお願い致します。
libraryの中にディレクトリ掘って入れるもんだとおもいます。
Delete今、手元にArduino環境がないので詳細は申し訳。
はじめまして。WIZNETのKIMと申します
ReplyDeleteこの度、弊社の製品を使ったプロジェクトを紹介するブログをはじめる予定なのですが
よろしければ、この投稿をWIZNETにほんブログの方に紹介することと画像の利用について許諾を頂けないでしょうか
ご検討頂き、ご返信頂けますよう、何卒、宜しくお願い致します。
doublesk@wiznettechnology.com