歩き遍路 平成19年春(J1) 記録の準備

Vc++・MFCのワーカスレッドで
    FT245からのデータを受信して表示

 Vc++・MFCのワーカスレッドでFT245からのデータを受信して表示しました。
 ワーカスレッドでFT245から受信したら、データをグローバル変数に格納することと、表示のためにPostMessage()関数でウインドウメッセージをPostします。ウインドウメッセージを受けた表示関数は、ウインドウメッセージの引数に従ってグローバル変数からデータを取り出し画面に表示します。又、メニューからワーカスレッド開始、停止の操作を行います。

 スレッドのお陰で、マイコンのスイッチ操作でメッセージを送信すると直ぐにパソコンの画面にその内容が表示されます。又、開始・停止操作をするとレスポンス良く応答します。

●動作概要とトレース結果

 次は実験の動作概要のブロック図です。その下は、プログラム埋め込みのトレースコマンドのによるプログラムの動きです。

 動作概要のブロック図に、動作の概要を示します。
 ・左上のR8Cマイコンは、スイッチ操作でメッセージを発生します。
 ・FT245は、メッセージをマイコンから受け取りUSB通信でパソコンに送信。
 ・FT245データ待ち状態のグローバルスレッド関数は、
   データを入力してグローバル変数に格納後、画面表示処理関数にウインドウメッセージをPost。
 ・ウインドウメッセージを受信した画面表示処理関数は、
   メッセージの引数に従ってグローバル変数に有るメッセージを右上の様に画面表示する。
 ・メニューの開始操作、AfxBeginThread()関数を実行してスレッドを起動。
 ・メニューの停止操作で、スレッド停止フラグを有効にして、スレッド停止を要求。





 プログラム埋め込みのトレースコマンドのによるプログラムの動きです。 次の動作を2回しています。
 ・スレッド動作開始
 ・FT245からのデータ入力によるウインドウメッセージを4回Post
 ・スレッド動作停止






●プログラムリストとその概要

 プログラムリストとその概要を下記します。
 プログラムの動きは、番号順にコメントで確認できます。











ホームへ戻る