- ベストアンサー
シリアルポートにデータを送るプログラム
VISUALC初心者です。実際Cも良く分かってないと思います。パソコンにも詳しくないです。 シリアルポートにデータを送るプログラムをVISUALCで作りたいんですが、何をやって良いかさっぱり分かりません。 仕様はダイアログベースで、ボタンを押すと、エディットボックスに書いたファイルパスのファイルのデータをRS232Cに送るということをやりたいのですが、全くもって分かりません。 ファイルの指定の仕方。 および一ビットずつシリアルポートに転送の仕方。 のすべてを教えてください。 以下を参考にしていますが、やっぱり良く分からないというのが現状です。 http://www2.muroran-it.ac.jp/circle/yume/serialport/index.html
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#専門家ではなく、「一般人」ですが。。。 補足に書かれたことについてコメントします。 WriteFile()の第2パラメータにハンドルを渡しています。 #エラーにならないのかな??? WriteFile()の前にReadFile()でファイルからデータをメモリ上に読み込んで、 そのアドレスを第2パラメータに渡す必要があると思います。 ファイルデータが固定長ならば予めリードするデータの領域を 確保しといてもいいし、データ長が不定ならGetFileSize()で 得たサイズをアロケートすればいいと思います。 間違ってたらごめんなさい。
その他の回答 (3)
- poor_Quark
- ベストアンサー率56% (1020/1799)
WIN2000なら、「WINDOWS2000デバイスドライバ入門」(CQ出版社:2500円)に、シリアルポート制御の解説がはじめの方に載ってます。私は勉強になりました。
お礼
すいません補足ではなくお礼に書くべきでした。 教えてgooの使い方がよくわからなかったもので。 おそくなりましたがありがとうございました。
補足
皆様本当にありがとうございます。 少し分かってきたので、また質問させてください。 fileHANDLE = CreateFile(filename,GENERIC_READ,0,0,OPEN_EXISTING,0,0); として、232Cに送りたいデータのあるファイルを開いて、 GetFileSize(fileHANDLE,NULL); として、そのファイルのサイズを得て、 BOOL WriteFile( HANDLE hFile, // COM1のハンドル LPCVOID fileHANDLE, // データのあるファイルハンドル DWORD nNumberOfBytesToWrite, // GetFileSizeで得たバイト数 LPDWORD lpNumberOfBytesWritten, // 書き込んだバイト数 LPOVERLAPPED lpOverlapped // NULL ); としてWriteFileを用いたいのですが、それは可能でしょうか? やってみたところ、書き込んだバイト数が0となってしまいます。 根本的に間違っているのでしょうか? よろしくおねがいします。 VCでやらねばなりません。 ヒントでもなんでもかまわないので分かるかた、お願いします。
- prome
- ベストアンサー率32% (64/196)
C言語に詳しくない上に、パソコンにも詳しくないとすれば、 VCよりもまずVBから入られた方がいいかと思います。 もっともVCでプログラミングしなければならない理由があるのなら別ですが。 参考にされているURLは、Cに詳しくない方にはきついと思います。 私もCに詳しくないので、よくわかりませんでした。 参考にするのなら、サンプルプログラムが豊富なサイトの方がいいかと。 私はRS-232Cでのデータのやり取りをVBで作っています。 RS-232C関連の本は非常に少ないですが、何とか見つけたのが以下の本です。 技術評論社「自動計測システムのためのVB6入門」金藤 仁著 ISBN4-7741-0940-1 \3,200(税別) この本にはRS-232C、GP-IBのサンプルPGMがいくつか載っており、 CD-ROMもついています。 雑誌でなく、本で出ているもので、私が見つけたのはこれだけでした。 お役にたてば幸いです。 あと、文化オリエント社のPDQ Commを使うと、RS-232CによるCOMポートの PGMはもっと簡単になります。このマニュアルにもサンプルPGMがあります。
お礼
おそくなりましたが、ありがとうございました。
- zerosix
- ベストアンサー率31% (47/149)
何もかも教えてくれということでは、プログラム関係は回答は得られませんよ。 上記のURLを見ましたが、APIを詳しく示していますよね。 でしたら、そのAPIをどのようにして使うか、検索エンジンを使って 調べるのが一番早いですよ。 勉強のWebページとして「猫でもわかるプログラミング」のURLを示します。 ご参考あれ。
お礼
おそくなりましたが、ありがとうございました。
お礼
ありがとうございました。 解決しました。 プログラムの知識ももちろんのこと、コンピュータの知識なども勉強しなければならないという事を痛感しております。 またお世話になるかと思います。そのときはよろしくお願いします。