コンテンツにスキップ
関数 > モーターLSI直接制御関数 >

PmcmWriteCmdBuf

機能

モーターコントローラLSI(PCL6123)へコマンドを書き込みます。

書式

INT PmcmWriteCmdBuf(
    WORD wID,
    WORD wAxis,
    BYTE byCmd
);

パラメータ

wID

ボードのID番号を指定します。

言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0/VBA GCC
WORD unsigned short ushort Short Integer uint16_t

wAxis

書き込む軸を指定します。複数の軸を指定することができます。

設定値 内容
PMCM_AXIS_X X軸
PMCM_AXIS_Y Y軸
言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0/VBA GCC
WORD unsigned short ushort Short Integer uint16_t

byCmd

書き込むコマンド値を指定します。

設定値の詳細はPCL6123のマニュアルを参照してください

言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0/VBA GCC
BYTE unsigned char byte Byte Byte uint8_t

戻り値

関数が正常に終了した場合は0(PMCM_RESULT_SUCCESS)が返ります。
正常に終了しなかった場合は0以外が返りますので、その場合はエラーコードを参照してください。

言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0/VBA GCC
INT int int Integer Long int32_t

使用例

IDが0のボードの、X軸とY軸のコマンドバッファへH'C0を書き込みます。

C/C++

int nResult;
WORD wAxis;
wAxis = PMCM_AXIS_X + PMCM_AXIS_Y;
nResult = PmcmWriteCmdBuf(0, wAxis, 0xC0);

C++/CLI

int result;
unsigned short axis;
axis = PMCM_AXIS_X + PMCM_AXIS_Y;
result = PmcmWriteCmdBuf(0, axis, 0xC0);

C#

int result;
ushort axis;
axis = Pmcm.PMCM_AXIS_X + Pmcm.PMCM_AXIS_Y;
result = Pmcm.WriteCmdBuf(0, axis, 0xC0);

VB(.NET2002以降)

Dim result As Integer
Dim axis As Short
axis = PMCM_AXIS_X + PMCM_AXIS_Y
result = PmcmWriteCmdBuf(0, axis, &HC0)

VB6.0/VBA

Dim lngResult As Long
Dim intAxis As Integer
intAxis = PMCM_AXIS_X + PMCM_AXIS_Y
lngResult = PmcmWriteCmdBuf(0, intAxis, &HC0)

GCC

int32_t result;
uint16_t axis;
axis = PMCM_AXIS_X + PMCM_AXIS_Y;
result = PmcmWriteCmdBuf(0, axis, 0xC0);