Arduino MEGA は、普通のArduino とShield 形状互換になってるので、大抵のシールドはそのまま使用できる。はずなのですが、、、
Ethernet Shield の様に、SPI 接続をしているものは要注意です。
私の使っている 「旧 Ethernet Shield」は、MEGA と互換性がありません。microSD のスロットが付いている「新 Ethernet Shield」は、そのまま MEGA で使用可能です。
原因は、MEGA(ATmega2560) とUno(ATmega328P) でSPI のピンアサインが異なるためです。
旧EthernetShield はATmega168/328 に合わせて、デジタル 11,12,13 番ピンを使っていました。新EthernetShield はどちらでも使えるよう、ICSP のポートからSPI の信号を取るようになっています。
対処法ですが、このように接続することで、プログラムの変更なしに動作させることができました。
(古い情報ではプログラムの修正が必要、というものがありますが、IDE 0022 では修正不要です。)
MOSI,MISO,SCK の3本を接続します。(SS はそのまま)MEGA 側はDIGITAL でもICSP でも、使いやすい方から取ればOK です。
この接続では、MEGA の11,12,13 と接続したままになってしまいますが、特に問題は無いようです。
0 件のコメント:
コメントを投稿