• ベストアンサー

パラレルポートで双方向通信がしたいのですが

Durandalの回答

  • ベストアンサー
  • Durandal
  • ベストアンサー率15% (47/297)
回答No.2

使用するチップ、またはチップセットのスペシフィケイションを読むのが早いと思います。 電源投入時のネゴシエーション時に設定します。

関連するQ&A

  • パラレルポートデバイスドライバープログラミングについて

    OS:WinNT4.0 Workstation 言語:VC++6.0 EPCのLineプリンターの出力ソフトを作成してます。 パラレルポートの制御ようのデバイスドライバーのプログラミングを したいのですが、、、何がなんだかさっぱりわかりません。 関係の資料とかあれば教えてください。 既存のものがあればもっといいですけど、、 よろしくお願いします。

  • RC232S⇔USB パラレルポートモード変換

    現在、使用しているノートPCにはパラレルポートがついておらず、オークションにてUSBケーブルに変換することのできるコネクタを購入しました。ところが、使用したい機器が認識してくれません。取説によるとパラレルポートのモードがECP、EPP、ECP+EPPのいずれかでないと認識しないと書かれていました。既存のパラレルポートならBIOS画面にてモード変更はできますが、後付けのポートのモード変更はどのようにすればいいのでしょうか?分かる方がおりましたらよろしくお願いします。

  • USB-パラレル変換ケーブル

    みなさま、どうか手を差し伸べてください・・・ 現在パラレルポートに接続するタイプのハードウェアキーを必要とするソフトウェアを利用しています。 このソフトを利用しているパソコンが古くなったため、いくぶん新しいノートパソコンに移行しようと考えています。 しかしこのノートパソコンにはパラレルポートがありません。 ネット上でいろいろ検索してみたところIBMで1つあったのですが、仕様の欄にwindowsがインストールされたthinkpadとあるので私のNECのノートで使えるかわからないのです。そのほかにもいくつか見つかったのですが、すべてアンフェノールの36ピンに変換するものばかりでした。 ハードキーはD-SUB25ピンなのでこれらは使えません。 どなたかUSBもしくはPCカードでD-SUB25ピンのパラレルポート(双方向通信可能なもの)を増設できるものをご存知でしたら教えてください。 よろしくお願いします。

  • USB-パラレル変換ケーブルに関して。

    PCにそれほど詳しくない初心者です。 PCのパラレルポートから信号を出力させるソフト(過去に詳しい人間が作製したもの)を使用しています。最近パラレルポートを装備しているノートパソコンが少なく、パラレルポート増設できるPCカード(高額)を用いているのですが、このたび、新たにUSB-パラレル(25ピン)ケーブルを購入し、使用できないか試行錯誤中です。 現在使用中のソフトではI/Oアドレスを指定して通信しているようなのですが USB-パラレル(25ピン)ケーブルでもI/Oアドレスの指定は可能でしょうか?? (ちなみに、このケーブルをPCに接続後、「デバイスマネージャ」で確認すると「USB印刷サポート」という名前でUSBデバイスとして認識されています。) とんちんかんな質問なのかもしれませんがなにかアドバイスいただけると幸いです。よろしくお願いいたします。

  • Windowsで初めてドライバの開発を行います。

    質問させて頂きます。 仕事で初めてUSBドライバの開発を行うことになりました。 必要な開発環境は揃えましたが情報が少なく DDKのサンプルを読み解くのも大変です。 カーネルモードで動作するため普通のアプリとは異なるようですが 初心者の私でも分かりやすい入門サイトや解説本は無いでしょうか? 嵌りやすい罠や注意する点もありましたら、是非ご教授をお願いします。

  • ECPモードの確認

    自宅のPCがECPモードのパラレルポートをサポートしているかどうか確認するためにはどうしたらいいのでしょうか? ちょっと急用です PCに付いて来る本全部見たつもりなんですがどこにも載ってません。(><) ちなみにうちは、Win95の東芝インフィニアです。

  • AUTOEXEC.NT消失について

    「教えて!goo」で何度も出ている質問なんですけど、回答を読んでも解決できないので再度質問させてください。 OSはWindows2000 SP4です。 ある特定のアプリケーションを起動しようとすると「C:\WINNT¥SYSTEM32¥AUTOEXEC.NT.システム ファイルはMS-DOS および Microsoft Windowアプリケーションを実行するのに適していません。アプリケーションを終了するには「閉じる」を選んで下さい」というエラーメッセージが出て起動できません。 こちらのサイトやマイクロソフトのサポート情報を読んで、WINNT\REPAIRフォルダのAUTOEXEC.NTをWINNT\SYSTEM32フォルダにコピーしました。 これで起動できるようになるのですが、再起動するとコピーしたSYSTEM32\AUTOEXEC.NTが消えてしまい、また同じ状態に戻ってしまいます。 同じ内容のAUTOEXEC.NTを新規ファイルとして作成してみたり、セーフモードでコピーしてみても同じです。 とりあえず、REPAIR\AUTOEXEC.NTをSYSTEM32にコピーするBATファイルを作成してスタートアップに入れるという暫定的な運用でしのいでますが、正しい解決方法はどうなんでしょうか?

  • teratermではシリアル通信出来るのですが・・

    現在アームロボットをPCからシリアルで送って制御するプログラムを作りたいと思っております。 現在Teratermからコマンドを送ってアームロボットが動く事は確認出来ております。 ただ、そこからC#にてプログラムを作成して動かそうとするとどうしてもコマンドを受け付けてくれません。 Teratermの設定は  ボーレート9600bps  データ長8bit  パリティnone  ストップビット 1bit  フロー制御 non です。 これで接続して「NT」と打ってリターンを押すと ロボットが原点復帰動作をします。 一方C#では  SerialPort port = new System.IO.Ports.SerialPort("COM2",9600,Parity.None,8,StopBits.One);  port.Open();  port.Write("NT");  port.Close();  port.Dispose(); と記述して実行しますが動きません。 改行コードが怪しいと思い、teratermで改行コードを CRからCR+LFに変更してみましたが問題なく動きます。 teraterm以外にもシリアル通信チェッカーv4.1.0 を試しましたが動きませんでした。 teratermは何か特別な仕様なのでしょうか? 何か見落としている設定項目ありますでしょうか? どうぞアドバイスよろしくお願い致します。

  • 微細形状の計測手段について

    現在、光の干渉を利用した微小段差計測手法の開発といった内容の研究をしているのですが、計測サンプルの実際の寸法が自分で確認できずに手法の評価に困っています。 サンプルを提供していただいたところからの寸法データはあるのですが、計測方法は明確にしていただけませんでした。 具体的にはエッジ形状の計測を行っていまして、エッジの傾き角の確認をしたいと考えています。 サンプル仕様では約70°程度の傾きがあるとのことですが、所有のAFM、白色走査顕微鏡で計測してもその半分ぐらいの角度が算出されてしまいます。 もしこのような場合に適した高精度計測方法および機器をご存知でしたら、ぜひご助言をお願いいたします。

  • 16bitのパラレル送信がうまくいかないで困っています。

    16bitのパラレル送信がうまくいかないで困っています。 25ピンのパラレルポートからデータを送信して16個あるLEDを制御したいのですが上手くいきません。 環境はC言語でデバイスはRobot I/O Port 32 DLL V5.4を使用しています。 最初はGiveIoというデバイスを使用していたのですが、どうしても8bitまでしか送信できず今のデバイスに変更しました。 変更したのはいいのですが、このデバイスでも8bitまでしか送信できません。多分私のプログラムのせいだと思うのですが・・・ 以下がソースになります。 #include <windows.h> #include <stdio.h> #include <math.h> #include "Rbtiop32.h" // デバイスのヘッダー #pragma comment(lib, "Rbtiop32.lib") // デバイスのlib int main(void) { short puls = 0; // ベースアドレスにいくつプラスするか short beas = 0; // ベースアドレス WORD sousin; // 送信データ int flg = 0; // 送信モード変更フラグ int ReturnData; // 送信したデータの戻り値 printf("--------------------------------------\n"); printf(" パラレルポート通信テストプログラム\n"); printf("--------------------------------------\n"); // PC/AT互換機かチェック if( GetPCArchitectureType() == 1 ) { // パラレルポートベースアドレスを自動設定 beas = SetPrinterPortIOAutoPCAT2(); if ( beas == 0 ) { printf( "パラレルポートを認識できませんでした\n" ); return 0; } printf( "パラレルポートベースアドレス = %x\n", beas ); } else { printf( "パソコンがPC/AT互換機ではありません\n" ); return 0; } printf( "操作するアドレス選択※0から2で入力\n" ); scanf( "%d", &puls ); printf( "操作するアドレス = %x\n", beas+puls ); // ループ while(1) { printf( "送信するデータを入力してください\n" ); scanf( "%d", &sousin ); // ループを抜ける if ( sousin == -1 ) break; // データ送信 printf( "sousin = %d\n", (WORD)sousin ); // データ送信 ReturnData = Out16( GetCurrentPrinterPortIOPCAT()+puls, sousin ); printf( "送信したデータ = %d\n", ReturnData ); // 送信が成功したかどうか? if( GetIOFunctionResult() == 0x00 ) { printf( "データ送信失敗\n\n" ); } else { printf( "データ送信成功!!\n\n" ); } } return 0; } ソースをいじりながら検証していたのでいらない処理等があると思いますがすみませんがこれでお願いします。 このプログラムを2つ起動させてコントロールレジスタとデータレジスタを同時に操作して検証しています。 教授願います。よろしくお願いします。 ※補足(現在の状況等) ・16bitを送信しても下位8bitしか反映されない。上位8bitが無視される。 ・I/Oの範囲は間違っていません。0x3bcがデータアドレスです。 ・必要とあらばGiveIo環境で使用していたソースも掲示できます。