その他のプログラミングについて少し役に立つ情報を発信します。いわゆる個人的な忘備録ですが、みなさんのお役に立てれば幸いです。今回は通信の制御信号の変化を捉えられる様にイベントを追加しました。パソコン同士では以下の様な接続が一般的でした。いわゆるPC-AT互換機のDサブ9ピンで考える場合は、信号名で合わせて下さい。(私自身は昔の人間ですので、Dサブ25ピンが普通でした)パソコン同士の接続を示しますが、外部機器との接続も大体これで問題無いと思います。同様にテレコに接続します。こちら側の送信データは相手側の受信データですし、相手側の送信データはこちら側の受信データになるという考えです。制御信号の線も同様となります。制御信号を見ないのであれば、究極以下の接続でも可能です。制御信号をそれぞれのコネクタの中でループバックして接続します。雑音対策としては推奨します。今まで各種機器の接続を行ったことがありますが、意外とこの方法が多かったりします。外部機器側でも制御信号をコントロールするプログラムを組むのも面倒なのかと思います。機器側でコマンドに従ってデータを送信する場合が一般的です。機器が何かの原因で反応しないかが分かります。それでは、「その4」のシリアル通信クラスに制御信号の変化イベントを追加します。追加するプロパティとして各信号の値を宣言します。Classこの通知アーギュメントクラスを利用して、「その4」のシリアル通信クラスを変更します。変更内容は以下の通りです。使ってイベントを定義を行う。制御信号アーギュメントクラスを生成し、制御信号データをその中に設定する。使って各CTS、DSR信号イベントを発生する。Classこのクラスを使用した例を以下のソースに示します。Classこのフォームは、シリアルコントロール及び、受信データ表示用のリッチテキストボックスを画面に張り付けてあります。宣言し、データ受信イベントの関数宣言が出来る様にします。中で、受信データの処理を行います。信号状態を表示する為のラベルを設置しています。以下はプログラムを起動した後で、機器側の制御信号をOFFのままにしています。ONし、データを送信した結果です。最近のPC、特にノートPCの場合ではRS232Cのコネクタがついていることは殆んどありません。そのため、以下の様なUSBを使ったRS232Cの変換ケーブルが使えそうです。プログラミングについて忍者ブログ[PR]。