TNB Library
|
RS232Cアクセスクラス [詳解]
#include <TnbRs232c.h>
クラス | |
class | CPort |
RS232C ポート管理 [詳解] | |
struct | TDevice |
デバイス情報 [詳解] | |
公開型 | |
enum | { LOW = true , HI = false } |
信号線状態. [詳解] | |
enum | EParity { Parity_Non = NOPARITY , Parity_Odd = ODDPARITY , Parity_Even = EVENPARITY , Parity_Mark = MARKPARITY , Parity_Space = SPACEPARITY } |
パリティ設定値 [詳解] | |
enum | EState { OPENNING , CONNECTING , CLOSED } |
状態 [詳解] | |
enum | EStopBits { StopBits_1 = ONESTOPBIT , StopBits_1_5 = ONE5STOPBITS , StopBits_2 = TWOSTOPBITS } |
ストップビット設定値 [詳解] | |
typedef CVectorT< TDevice > | TDeviceVector |
デバイス情報配列. [詳解] | |
公開メンバ関数 | |
virtual bool | CanReceive (void) const |
[確認] 受信可能確認. [詳解] | |
virtual bool | CanSend (void) const |
[確認] 送信可能確認. [詳解] | |
virtual EState | Check (void) const |
[確認] チェック. [詳解] | |
virtual void | Close (void) |
[処理] クローズ. [詳解] | |
CRs232c (void) | |
コンストラクタ [詳解] | |
HANDLE | GetHandle (void) const |
[取得] ハンドル取得 [詳解] | |
void | GetParameter (CPort &_comPort, DWORD &_dwBaudRate, BYTE &_bByteSize, EParity &_eParity, EStopBits &_eStopBits) const |
[取得] オープン設定取得. [詳解] | |
virtual const TProperty & | GetProperty (void) const |
[取得] 性能取得 [詳解] | |
virtual size_t | GetReceivingDataSize (void) const |
[確認] 受信データ確認. [詳解] | |
virtual bool | IsConnect (void) const |
[確認] 接続確認. [詳解] | |
bool | IsCtsSignalLow (void) const |
[取得] CTS 確認. [詳解] | |
bool | IsCtsSignalOn (void) const |
[取得] CTS 確認. [詳解] | |
bool | IsDsrSignalLow (void) const |
[取得] DSR 確認. [詳解] | |
bool | IsDsrSignalOn (void) const |
[取得] DSR 確認. [詳解] | |
virtual bool | IsOpened (void) const |
[確認] オープン確認. [詳解] | |
bool | IsRingSignalLow (void) const |
[取得] RING 確認. [詳解] | |
bool | IsRingSignalOn (void) const |
[取得] RING 確認. [詳解] | |
bool | IsRlsdSignalLow (void) const |
[取得] RLSD 確認. [詳解] | |
bool | IsRlsdSignalOn (void) const |
[取得] RLSD 確認. [詳解] | |
virtual bool | Open (void) |
[処理] オープン. [詳解] | |
bool | PaddingReceive (DWORD dwTime) |
[操作] パディング読み込み [詳解] | |
virtual void | Purge (void) |
[設定] パージ. [詳解] | |
virtual size_t | Receive (size_t size, LPVOID _P) |
[処理] 受信. [詳解] | |
virtual size_t | Send (size_t size, LPCVOID P) |
[処理] 送信. [詳解] | |
void | SetCheckCtsMode (bool r=true) |
[設定] CTSチェック設定. [詳解] | |
bool | SetDtrSignal (bool isLow) |
[設定] DTR 設定. [詳解] | |
DWORD | SetParameter (CPort comPort, DWORD dwBaudRate, BYTE bByteSize, EParity eParity, EStopBits eStopBits) |
[設定] オープン設定. [詳解] | |
virtual bool | SetReceiveTimeout (DWORD to) |
[設定] 受信待ち時間設定. [詳解] | |
bool | SetRtsSignal (bool isLow) |
[設定] RTS 設定. [詳解] | |
void | SetSendMode (bool canBulk) |
[設定] 送信設定. [詳解] | |
~CRs232c (void) | |
デストラクタ [詳解] | |
静的公開メンバ関数 | |
static DWORD | CanPortBeOpened (CPort comPort) |
[確認] 指定ポートは開けるか [詳解] | |
static TDeviceVector | EnumExistPortDeviceNames (void) |
[取得] 存在するPort一覧 [詳解] | |
static CWordVector | EnumExistPorts (void) |
[取得] 存在するPort一覧 [詳解] | |
static CWordVector | EnumExistPortsByUsb (WORD vid, WORD pid) |
[取得] USBシリアルPort一覧. [詳解] | |
限定公開メンバ関数 | |
virtual HANDLE | CreatePort (LPCTSTR lpszPortName) const |
[通知] ポート作成. [詳解] | |
virtual bool | OnRs232cOpening (HANDLE hComPort, DCB &_tDCB, COMMTIMEOUTS &_tCommTimeOuts) |
[通知] オープン通知. [詳解] | |
virtual bool | ReadPort (size_t &_redSize, LPVOID _P, size_t len, HANDLE h) const |
[通知] ポート読み込み. [詳解] | |
virtual bool | WritePort (size_t &_writtenSize, size_t len, LPCVOID P, HANDLE h) const |
[通知] ポート書き込み. [詳解] | |
RS232Cアクセスクラス
シリアルアクセスを行うクラスです。
TnbRs232c.h の 71 行目に定義があります。
typedef CVectorT<TDevice> TDeviceVector |
デバイス情報配列.
TnbRs232c.h の 867 行目に定義があります。
anonymous enum |
enum EParity |
パリティ設定値
列挙値 | |
---|---|
Parity_Non | なしパリティ |
Parity_Odd | 奇数パリティ |
Parity_Even | 偶数パリティ |
Parity_Mark | マークパリティ |
Parity_Space | 空白パリティ |
TnbRs232c.h の 194 行目に定義があります。
|
inherited |
enum EStopBits |
CRs232c | ( | void | ) |
コンストラクタ
TnbRs232c.h の 229 行目に定義があります。
~CRs232c | ( | void | ) |
デストラクタ
TnbRs232c.h の 237 行目に定義があります。
|
static |
[確認] 指定ポートは開けるか
comPort | COMポートナンバー。 数値でも文字列でも指定可能です。 |
0 | 成功。 |
0以外 | エラー。数値はシステムエラーコードです( SystemErrorToMessageText() で文字列化できます)。 |
TnbRs232c.h の 802 行目に定義があります。
|
virtualinherited |
[確認] 受信可能確認.
true | 受信可能。 |
false | 不可能。 |
CCeUsbHid, CFileCommunicator, CVmRs232c, CUsbHidで再実装されています。
TnbCommunication.h の 119 行目に定義があります。
|
virtualinherited |
[確認] 送信可能確認.
true | 送信可能。 |
false | 不可能。 |
CCeUsbHid, CFileCommunicator, CVmRs232c, CUsbHidで再実装されています。
TnbCommunication.h の 112 行目に定義があります。
|
virtual |
[確認] チェック.
状態を確認します。定期的に呼び出す必要があります。
OPENNING | オープン状態 |
CONNECTING | オープン&接続状態 |
CLOSED | クローズ状態 |
ICommunicationを再実装しています。
TnbRs232c.h の 432 行目に定義があります。
|
virtual |
[処理] クローズ.
ICommunicationを実装しています。
CBluetoothCom, CRs232cExで再実装されています。
TnbRs232c.h の 364 行目に定義があります。
|
protectedvirtual |
[通知] ポート作成.
ポート作成時、コールされます。
lpszPortName | ポート名 |
INVALID_HANDLE_VALUE | 失敗。 |
上記以外 | 成功。値はハンドル。使用後は CloseHandle() してください。 |
CRs232cExで再実装されています。
TnbRs232c.h の 954 行目に定義があります。
|
static |
[取得] 存在するPort一覧
TnbRs232c.h の 873 行目に定義があります。
|
static |
|
static |
[取得] USBシリアルPort一覧.
vid | VendorID (USB) |
pid | ProductID (USB) |
TnbRs232c.h の 913 行目に定義があります。
HANDLE GetHandle | ( | void | ) | const |
void GetParameter | ( | CPort & | _comPort, |
DWORD & | _dwBaudRate, | ||
BYTE & | _bByteSize, | ||
EParity & | _eParity, | ||
EStopBits & | _eStopBits | ||
) | const |
[取得] オープン設定取得.
SetParameter() で設定した値を取得できます。
[out] | _comPort | ポートナンバー。 |
[out] | _dwBaudRate | 転送速度[bps] |
[out] | _bByteSize | キャラクタビット[bits] |
[out] | _eParity | パリティ(偶数/奇数) |
[out] | _eStopBits | ストップビット[bits] |
TnbRs232c.h の 251 行目に定義があります。
|
virtual |
[取得] 性能取得
ICommunicationを実装しています。
CRs232cExで再実装されています。
TnbRs232c.h の 329 行目に定義があります。
|
virtual |
[確認] 受信データ確認.
INVALID_SIZE | 不明。 |
上記以外 | 受信可能データサイズ。 |
ICommunicationを再実装しています。
TnbRs232c.h の 410 行目に定義があります。
|
virtual |
[確認] 接続確認.
true | 接続中。 |
false | 切断中。 |
ICommunicationを再実装しています。
TnbRs232c.h の 400 行目に定義があります。
bool IsCtsSignalLow | ( | void | ) | const |
[取得] CTS 確認.
CTS(clear-to-send)信号の状態を確認します。
true | LOW(ON) |
false | HI(OFF) |
TnbRs232c.h の 686 行目に定義があります。
bool IsCtsSignalOn | ( | void | ) | const |
[取得] CTS 確認.
true | ON(LOW) |
false | OFF(HI) |
TnbRs232c.h の 758 行目に定義があります。
bool IsDsrSignalLow | ( | void | ) | const |
[取得] DSR 確認.
DSR(data-set-ready)信号の状態を確認します。
true | LOW(ON) |
false | HI(OFF) |
TnbRs232c.h の 708 行目に定義があります。
bool IsDsrSignalOn | ( | void | ) | const |
[取得] DSR 確認.
true | ON(LOW) |
false | OFF(HI) |
TnbRs232c.h の 769 行目に定義があります。
|
virtual |
bool IsRingSignalLow | ( | void | ) | const |
[取得] RING 確認.
RING 信号の状態を確認します。
true | LOW(ON) |
false | HI(OFF) |
TnbRs232c.h の 725 行目に定義があります。
bool IsRingSignalOn | ( | void | ) | const |
[取得] RING 確認.
true | ON(LOW) |
false | OFF(HI) |
TnbRs232c.h の 780 行目に定義があります。
bool IsRlsdSignalLow | ( | void | ) | const |
[取得] RLSD 確認.
RLSD(receive-line-signal-detect)信号の状態を確認します。
true | LOW(ON) |
false | HI(OFF) |
TnbRs232c.h の 742 行目に定義があります。
bool IsRlsdSignalOn | ( | void | ) | const |
[取得] RLSD 確認.
true | ON(LOW) |
false | OFF(HI) |
TnbRs232c.h の 791 行目に定義があります。
|
protectedvirtual |
[通知] オープン通知.
オープン時、コールされます。
[in] | hComPort | ハンドル |
[in,out] | _tDCB | 現在の DCB が渡されます。変更することで設定を変更できます。 |
[in,out] | _tCommTimeOuts | 現在の COMMTIMEOUTS が渡されます。変更することで設定を変更できます。 |
true | オープン処理継続。 |
false | オープン処理中止(Openが失敗します)。 |
CRs232cHfで再実装されています。
TnbRs232c.h の 942 行目に定義があります。
|
virtual |
[処理] オープン.
true | 成功。 |
false | 失敗。 |
ICommunicationを実装しています。
CBluetoothCom, CRs232cExで再実装されています。
TnbRs232c.h の 349 行目に定義があります。
bool PaddingReceive | ( | DWORD | dwTime | ) |
[操作] パディング読み込み
dwTime | 受信情報なしの時間指定。 |
true | 成功 |
false | 失敗 |
TnbRs232c.h の 570 行目に定義があります。
|
virtual |
|
protectedvirtual |
[通知] ポート読み込み.
ポート読み込み時、コールされます。
[out] | _redSize | 書き込んだサイズが格納されます。 |
[out] | _P | 読み込みデータが格納されます。 |
[in] | len | 読み込みデータ最大 |
[in] | h | ハンドル |
true | 成功 |
false | 失敗 |
CRs232cExで再実装されています。
TnbRs232c.h の 995 行目に定義があります。
|
virtual |
[処理] 受信.
[in] | size | サイズ。 |
[out] | _P | データ。size 分のメモリは確保しておく必要があります。 |
INVALID_SIZE | エラー。 |
0 | 受信データなし。 |
上記以外 | 受信データサイズ。 |
ICommunicationを実装しています。
CRs232cExで再実装されています。
TnbRs232c.h の 529 行目に定義があります。
|
virtual |
[処理] 送信.
size | サイズ。 |
P | データ。 |
INVALID_SIZE | エラー。 |
上記以外 | 送信データサイズ。0の可能性もあります。 |
ICommunicationを実装しています。
TnbRs232c.h の 462 行目に定義があります。
void SetCheckCtsMode | ( | bool | r = true | ) |
[設定] CTSチェック設定.
CTS信号が立っている時だけ接続とするモードと、CTS信号を無視するモードを選択できます。
r | ture なら CTS信号をチェックします。デフォルトはチェックしません。 |
TnbRs232c.h の 319 行目に定義があります。
bool SetDtrSignal | ( | bool | isLow | ) |
[設定] DTR 設定.
DTR(data-terminal-ready)信号の状態を設定します。
isLow | 状態。 CRs232c::LOW か CRs232c::HI を指定。 |
true | 成功 |
false | 失敗 |
TnbRs232c.h の 651 行目に定義があります。
DWORD SetParameter | ( | CPort | comPort, |
DWORD | dwBaudRate, | ||
BYTE | bByteSize, | ||
EParity | eParity, | ||
EStopBits | eStopBits | ||
) |
[設定] オープン設定.
RS232Cの設定を行います。通常、 Open の前に使用します。
comPort | COMポートナンバー。 数値でも文字列でも指定可能です。 |
dwBaudRate | 転送速度[bps] |
bByteSize | キャラクタビット[bits] |
eParity | パリティ(偶数/奇数) |
eStopBits | ストップビット[bits] |
0 | 成功。 |
0以外 | エラー。数値はシステムエラーコードです( SystemErrorToMessageText() で文字列化できます)。 |
TnbRs232c.h の 274 行目に定義があります。
|
virtual |
[設定] 受信待ち時間設定.
Receive() 実行時、受信できるデータが無い時に待つ時間を設定できます。
to | タイムアウト時間 (ms)。 |
ICommunicationを実装しています。
CRs232cExで再実装されています。
TnbRs232c.h の 299 行目に定義があります。
bool SetRtsSignal | ( | bool | isLow | ) |
[設定] RTS 設定.
RTS(request-to-send)信号の状態を設定します。
isLow | 状態。 CRs232c::LOW か CRs232c::HI を指定。 |
true | 成功 |
false | 失敗 |
TnbRs232c.h の 669 行目に定義があります。
void SetSendMode | ( | bool | canBulk | ) |
[設定] 送信設定.
送信設定をおこないます。デフォルトはバルク(一括)モードです。
canBulk | ture ならバルク(一括)モードで送信します。 false なら、一バイトずつ送信します。 |
TnbRs232c.h の 309 行目に定義があります。
|
protectedvirtual |
[通知] ポート書き込み.
ポート書き込み時、コールされます。
[out] | _writtenSize | 書き込んだサイズが格納されます。 |
[in] | len | 書き込みデータサイズ |
[in] | P | 書き込みデータ |
[in] | h | ハンドル |
true | 成功 |
false | 失敗 |
CRs232cExで再実装されています。
TnbRs232c.h の 973 行目に定義があります。