はじめまして!!
マサと申します
シリアル通信でファイルを送りたいのですが。
さっぱりわかりません教えてください
らららです。
以下のようにCreateFile作成して
HANDLE commHandle;
commHandle = CreateFile(
setCommPort, // オープンするCOMポート
GENERIC_READ|GENERIC_WRITE, // アクセスモード
0, // 共有モード
NULL, // セキュリティ属性
OPEN_EXISTING, // 作成フラグ
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, // 属性
NULL // コピーする属性付きファイルのハンドル
);
WriteFile();
ReadFile();
で読み書きできますよ。
らららさん ありがとうございます。
返事遅くてすみません。
また質問なのですが
この場合、ボーレート、スタートビット、ストップビット、パリティなどは、
どのように設定したらよいのでしょうか?
細かい設定は以下のように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のハンドルに
設定します。
ありがとうございます。
頑張ってみます。また、何か
よいご意見ありましたらよろしくお願いします。
ありがとうございました。
また何かありましたら、よろしくお願いします。