シリアル通信でファイルの転送するには? – プログラミング – Home

シリアル通信でファイルの転送するには?
 
通知
すべてクリア

[解決済] シリアル通信でファイルの転送するには?


VC 初心者 マサ
 VC 初心者 マサ
(@VC 初心者 マサ)
ゲスト
結合: 24年前
投稿: 6
Topic starter  

はじめまして!!
マサと申します

シリアル通信でファイルを送りたいのですが。
さっぱりわかりません教えてください


引用未解決
トピックタグ
ららら
(@admin-rarara)
メンバー Admin
結合: 5年前
投稿: 118
 

らららです。

以下のようにCreateFile作成して
HANDLE commHandle;

commHandle = CreateFile(
setCommPort, // オープンするCOMポート
GENERIC_READ|GENERIC_WRITE, // アクセスモード
0, // 共有モード
NULL, // セキュリティ属性
OPEN_EXISTING, // 作成フラグ
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, // 属性
NULL // コピーする属性付きファイルのハンドル
);

WriteFile();
ReadFile();
で読み書きできますよ。


返信引用
VC 初心者 マサ
 VC 初心者 マサ
(@VC 初心者 マサ)
ゲスト
結合: 24年前
投稿: 6
Topic starter  

らららさん ありがとうございます。
返事遅くてすみません。

また質問なのですが
この場合、ボーレート、スタートビット、ストップビット、パリティなどは、
どのように設定したらよいのでしょうか?


返信引用
ららら
(@admin-rarara)
メンバー Admin
結合: 5年前
投稿: 118
 

細かい設定は以下のようにDCB構造体を使用します。
DCB dcb;
dcb.BaudRate = setBaudRate; // ボーレート
dcb.fParity = FALSE; // パリティチェック
dcb.Parity = NOPARITY; // パリティチェック方式
dcb.ByteSize = 8; // 1バイト当たりのビット数
dcb.StopBits = ONESTOPBIT; // ストップビット数

dcb.fOutxCtsFlow = FALSE; // CTS出力フロー制御
dcb.fOutxDsrFlow = FALSE; // DSR出力フロー制御
dcb.fDtrControl = DTR_CONTROL_ENABLE; // DTRフロー制御の種類
dcb.fRtsControl = RTS_CONTROL_ENABLE; // RTSフロー制御の種類
dcb.fDsrSensitivity = FALSE; // DSR信号認識

dcb.fOutX = FALSE; // XON,XOFFフロー出力制御
dcb.fInX = FALSE; // XON,XOFFフロー入力制御
dcb.fTXContinueOnXoff = FALSE; // XOFF後も送信を継続
dcb.XonLim = 2048; // XON送信前に格納できる最小バイト数
dcb.XoffLim = 4096; // XOFF送信前に格納できる最大バイト数
dcb.XonChar = 0x11; // XON文字
dcb.XoffChar = 0x13; // XOFF文字

dcb.fBinary = TRUE; // バイナリーモード
dcb.fNull = FALSE; // NULLバイト破棄
dcb.fAbortOnError = FALSE; // エラー時、読み書き操作終了
dcb.fErrorChar = FALSE; // パリティエラー時のキャラクタ置換
dcb.ErrorChar = 0x00; // エラー発生時、置換文字
dcb.EofChar = 0x03; // データ終了文字
dcb.EvtChar = 0x02; // イベント通知文字

dcb.DCBlength = sizeof(DCB); // DCB構造体サイズ
dcb.wReserved = 0; // 未使用

if(!SetCommState(commHandle, &dcb))
{
return FALSE;
}

そんでSetCommStateでオープンしたCOMMのハンドルに
設定します。


返信引用
VC 初心者 マサ
 VC 初心者 マサ
(@VC 初心者 マサ)
ゲスト
結合: 24年前
投稿: 6
Topic starter  

ありがとうございます。
頑張ってみます。また、何か
よいご意見ありましたらよろしくお願いします。


返信引用
VC 初心者 マサ
 VC 初心者 マサ
(@VC 初心者 マサ)
ゲスト
結合: 24年前
投稿: 6
Topic starter  

ありがとうございました。
また何かありましたら、よろしくお願いします。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました