ブログパーツUL5

データ送信(EXT)にチャレンジ

 加速度センサーなどの測定値がいくつになっているかを調べるために、roboBASICで用意されているETXやERXを利用しようと考えてテストしてみましたが、今までうまくデータ転送できませんでした。MC-3024のプログラム転送するコネクタからETXもデータ転送できるものだとず〜と思い込んでいました。
 データ転送について貴重な情報を頂き、なんとか原因がわかってきました。MR-C3024の回路図がなかったので原因がわからなかったのですが、海外にMR-C3024の回路図あることがわかり、早速、RC232Cを辿ってみるがどの端子に出ているのかまでは特定できませんでした。でもLCDモジュールを接続するポートがあるらしく、それと同様にETX用の出力ポートがあるようです。多分、その隣がERXの入力ポートではと推測しています。

 しかし、ETXやERXはRS232C規格によるデータ転送のため、そのまま接続してもダメで、RS232Cに変換する回路を付けなければなりません。RS232Cの変換回路はADM3202で検索すればすぐに見つかります。AnalogDevicesの「ADM3202」はチャージポンプ回路を内蔵しているので、+3.3V〜+5Vで動作するMAX232互換ドライバを使います。電源は出力ポートから取ります。データ送信だけであれば、信号線は1本だけでいいので簡単です(GND、VCC、Signalだけ)。

テストプログラムを次のように組んで動かします。
DIM A as BYTE
main:
 A = "A"
 ETX 9600,A
GOTO main

 実は、ETXの出力ポートがどれなのかマニュアルがないので、差してデータ送信するかどうか確認してみると写真の↓のところでデータ送信をするようになりました。製作した回路基板の部品構成は次の通り。
ADM3202×1
0.1µF×5
100Ω×4(送信だけなら×2)
Dsub9ピン×1
基板小片×1

 上のテストプログラムを走らせて、PCのターミナルで転送されたデータを表示したものです。どうもLCD出力とETX出力のポートは違うようなので注意してください。今回は正式なマニュアルがなく、実験でテストして推測しているので、同じことをする場合には自己責任にてお願いします。 
 まだ、ETXがアスキーコード転送なので、アナログ出力値の数値がうまく表示できていません。そこら辺の情報があれば、提供してもらえると助かります。


【追加】

 ケーブルに隠れていましたが、MR-C3024のマイコンボードをよく見れば、基板に、LCD、TX、RXと書いてあるではありませんか。このTXとRXがETXとERXの専用ポートだと思われます。それにしてもMR-C3024の回路図を含めた正式なマニュアルがほしいですね。

0

    コメント
    LCDポートに接続してPRINT文で出力すればいいのでは
    ないでしょうか。
    PRINT FORMAT(変数、HEX、桁)
    PRINT FORMAT(変数、DEC、桁)
    PRINT FORMAT(変数、BIN、桁)
    この命令文が使えます。


    http://avalon1982.cocolog-nifty.com/robot/2008/01/mr16202_lcd_85ea.html
    ↑この方も同じような実験をされてます。
    • ラパイド
    • 2008/01/21 12:55 AM
    • ラパイド
    • 2008/01/21 1:44 AM
    ラパイドさん、情報有難う御座います。

    >LCDポートに接続してPRINT文で出力すればいいのでは

    私のところでは、どうもうまく表示できませんでした。
    • takuo
    • 2008/01/21 10:32 PM
    コメントする








       
    この記事のトラックバックURL
    トラックバック

    カレンダ

          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    << February 2020 >>