関数 > モーターLSI直接制御関数 >

YduPmcsWriteCmdBuf

機能

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

書式

INT YduPmcsWriteCmdBuf(
    WORD wUnitID,
    WORD wAxis,
    BYTE byData
);

パラメータ

wUnitID

ユニットのID番号を指定します。

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

wAxis

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

設定値 内容
PMC_AXIS_X0 X0軸
PMC_AXIS_Y0 Y0軸
PMC_AXIS_Z0 Z0軸
PMC_AXIS_U0 U0軸
PMC_AXIS_X1 X1軸
PMC_AXIS_Y1 Y1軸
PMC_AXIS_Z1 Z1軸
PMC_AXIS_U1 U1軸
言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0
WORD unsigned short ushort Short Integer

byData

書き込むコマンド値を指定します。
設定値の詳細はPCD4541のマニュアルを参照してください。

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

戻り値

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

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

使用例

ユニットIDが0のユニットの、X0軸とZ0軸のコマンドバッファへ0xC0を書き込みます。

C/C++

int nResult;
WORD wAxis;
wAxis = PMC_AXIS_X0 + PMC_AXIS_Z0;
nResult = YduPmcsWriteCmdBuf(0, wAxis, 0xC0);

C++/CLI

int result;
unsigned short axis;
axis = PMC_AXIS_X0 + PMC_AXIS_Z0;
result = YduPmcsWriteCmdBuf(0, axis, 0xC0);

C#

int result;
ushort axis;
axis = YduPmcs.PMC_AXIS_X0 + YduPmcs.PMC_AXIS_Z0;
result = YduPmcs.WriteCmdBuf(0, axis, 0xC0);

VB(.NET2002以降)

Dim result As Integer
Dim axis As Short
axis = PMC_AXIS_X0 + PMC_AXIS_Z0
result = YduPmcsWriteCmdBuf(0, axis, &HC0)

VB6.0

Dim lngResult As Long
Dim intAxis As Integer
intAxis = PMC_AXIS_X0 + PMC_AXIS_Z0
lngResult = YduPmcsWriteCmdBuf(0, intAxis, &HC0)