※以下の記事は2011年に書いたけど、投稿してなかったものです。今となっては情報が古いと思いますが・・・何かの参考になればと、再投稿します。
NXTのセンサーポートはI2C通信ができることは広く知られています。
(あくまでも、なんちゃってI2Cですけど・・・)
しかし、RS485での通信ができることは、結構知られてないのではないでしょうか?
最近、Dexter Industries という会社がWiFiセンサーなどという製品を開発し、それがRS485を使用しているので、ちょっとはメジャーになったのかも?
で、そのRS485で通信する実験をしてみました。
と、言っても・・・
このページに書かれていたプログラムを実行しただけです。
ArduinoとNXTをケーブルで接続するのですが・・・MAX485というICを間に入れます。
Differential
これで、通信できるハズなのですが・・・
うんとも、すんとも言いません。
配線も、プログラムも何回か確認しました。
でも、ダメ!
秋月電子で買ってきたICがMAX485ではなくて、「MAX485互換」だからダメなのでしょうか?
そのICの説明書を見てみると・・・(英語だから判んない)・・・でも、回路図を見ると・・・
通信に使う2本の信号線の間に120Ωの抵抗が入っています。
もしかしたら・・・これが必要なのじゃないの?
こんなこともあろうかと、買っておいた120Ωの抵抗をABの間に入れてみると・・・
通信が開始されました。
とりあえず・・・プログラムの仕組みとか、よく判らないけど。
とにかく、動くことは判りました。
じゃ、そうゆうことで・・・
注)これは2011年に書いたけど、(なぜか)投稿しなかった古い記事です・・・ですので、今となっては役に立たない情報かもしれません・・・