解決済みの質問
RS232Cインターフェースで測定器とデータ通信をしたいのですが、
(古い測定器なので)説明書にはPC9801用のサンプルプログラムしか載っていません。
WinXP機で通信したいと考えているのですが、書いてある通りにやってもうまくいきません。
何がおかしいか分からないのですが、そもそもパソコンが違うとプログラムとか設定も変わってくることはあるんでしょうか?
投稿日時 - 2006-10-25 15:44:27
1番です。
まだ、ご覧になっていらっしゃるでしょうか?
10 '***Ri(mmmm,nnnn,x) COMMAND (N88BASIC) ***
20 OPEN "COM1:N81NN" AS #1
30 PRINT #1,"R1(0000,0050,A)"
40 LINE INPUT #1,RTN$
50 PRINT "R1 RETURN=";RTN$
60 CLOSE #1
70 END
なつかしいBASIC言語ですね。
10は単なる覚え書き、このプログラムの名前です
20シリアルポート1番を開きなさい
30シリアルポート1番に"R1(0000,0050,A)"というデータを送りなさい
40シリアルポート1番からの返信データを待って、そのデータをRTN$という変数に代入しなさい
50"R1 RETURN="という文字列に続けてRTN$の数値を画面に表示しなさい
60シリアルポート1番を閉じなさい
70おしまい
…という意味ですね。
"R1(0000,0050,A)"という送信データの構文はおそらくその測定器の説明書に出ていると思います。
お役に立てれば光栄です。
投稿日時 - 2006-11-05 09:42:54
お礼
詳しい解説を有難うございます。
実は未だにうまくいかず、諦めかけてたところでした・・・
プログラムには間違いはないみたいですね。でもこれがWinXp機で動かないと言うことは、何か手を加えないといけないのですかね?
PC9801じゃないと動かないんでしょうか?
また回答頂けると幸いです。
投稿日時 - 2006-11-07 16:39:36
1人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(5件中 1~5件目)
1番5番です。
>でもこれがWinXp機で動かないと言うことは、何か手を加えないといけないのですかね?
このプログラムをWinXPのどのアプリで動かそうとしたのですか?
これは「BASIC」という言語ですから、1番でお答えしたように当然XPでは動きません。
あとはWindows標準の「ハイパーターミナル」を使う手もあるようです。
http://kasai86.ld.infoseek.co.jp/window/hyperterm.htm
http://www.lightstone.co.jp/products/wedge/resources2.htm
http://www.cisco.com/japanese/warp/public/3/jp/service/tac/63/capture_text_hyperterminal-j.shtml
インストールされていないときはこちらをご覧下さい。
http://www-06.ibm.com/jp/domino04/pc/support/beginner.nsf/btechinfo/SYB0-017869A
ご参考になれば幸いです。
なおこれ以上のことは当方にはわかりかねますので、御了承下さい。
投稿日時 - 2006-11-09 12:18:51
http://okwave.jp/qa2480960.html
に関連した質問ですね…
私自身はN88BASICについて詳しくないので何とも言えません。
サンプルプログラムに関して詳細な説明・解説がついているようなら
別の言語で一からプログラムを作るって方法もあります。
いっそ中古でPC-98を一台買ってしまうのもが手っ取り早かったりするかも知れません。取り込んだデータはフロッピー等でWinXPのマシンに持ってくればいい事ですし。
投稿日時 - 2006-10-26 21:23:13
>説明書にはPC9801用のサンプルプログラムしか載っていません。
どんなサンプルプログラムなのでしょうか…
PC-9801用のDOSプログラムか何かでしょうか?だとしたらAT互換機ましてやWinXPのDOS窓(コマンドプロンプト)では動かない可能性が高いと思います。もしソースコードが付属しているようならWinXPでコンパイルしてみると言うのも一つの方法ですがそれでも動かない可能性が高いと思います。(RS232Cの制御関係はPC-98とAT互換機では異なるので)
例えばサンプルプログラム以外にソースコードやRS232Cで測定機器からPCへのピンアサイン表みたいなのがありどれがどの信号を受信していると言うような情報等があれば自分でプログラムを組み直したりすることも出来るかも知れません。
投稿日時 - 2006-10-25 22:03:35
補足
回答有難うございます。
サンプルプログラムは、以下の通りです。
PC9801(N88BASIC)用
10 '***Ri(mmmm,nnnn,x) COMMAND (N88BASIC) ***
20 OPEN "COM1:N81NN" AS #1
30 PRINT #1,"R1(0000,0050,A)"
40 LINE INPUT #1,RTN$
50 PRINT "R1 RETURN=";RTN$
60 CLOSE #1
70 END
このサンプルプログラムから何か分かることはあるでしょうか?
ピンアサイン表というのはこれのことでしょうか?
僕にはさっぱりなので・・・
ピン番号 信号名 機能
1 FG(AA) Frame GND
2 TXD(BA) 送信データ
3 RXD(BB) 受信データ
4 RTS(CA) 送信要求
5 CTS(CB) 送信可
6 NC NON CONNECT
7 SG(AB) SIGNAL GND
以下、NON CONNECT
素人相手で申し訳ありませんが、また回答していただけると幸いです。
投稿日時 - 2006-10-26 15:42:27
はじめまして
たとえがあまり適切ではないかもしれませんが、同じ人間でも、日本人とアメリカ人では、同じことをお願いするにも「言語」が違います。
パソコンも同様で、「PC9801」と現在の「Windowsマシン」は、言語が違うということなのです。
日本人にするように「おいでおいで」と手を振ると、欧米の人には「バイバイ」になってしまうようなこともあります。
そのようなわけで、うまくいかないのだと思います。
投稿日時 - 2006-10-25 18:12:23
お礼
分かりやすい説明有難うございます。
そこを踏まえた上で、これから問題を解決していきたいと思います。
投稿日時 - 2006-10-26 13:26:10