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

YduPmcsWriteCmdBuf

機能

モーターコントロールLSIへコマンドを書き込みます。

書式

INT YduPmcsWriteCmdBuf(
    WORD unitId,
    WORD axis,
    BYTE command
);

パラメータ

unitId

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

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

axis

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

定義
PMC_AXIS_X0 0x01 X0軸
PMC_AXIS_Y0 0x02 Y0軸
PMC_AXIS_Z0 0x04 Z0軸
PMC_AXIS_U0 0x08 U0軸
PMC_AXIS_X1 0x10 X1軸
PMC_AXIS_Y1 0x20 Y1軸
PMC_AXIS_Z1 0x40 Z1軸
PMC_AXIS_U1 0x80 U1軸
言語 C# VB(.NET2002以降) VB6.0/VBA C++/CLI C/C++
ushort Short Integer unsigned short WORD

command

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

Note

設定値の詳細は、モーターコントロールLSIのマニュアルを参照してください。

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

戻り値

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

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

使用例

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

C#

var result = YduPmcs.WriteCmdBuf(0, YduPmcs.PMC_AXIS_X0 + YduPmcs.PMC_AXIS_Z0, 0xE0);

VB(.NET2002以降)

Dim result As Integer = YduPmcsWriteCmdBuf(0, PMC_AXIS_X0 + PMC_AXIS_Z0, &HE0)

VB6.0/VBA

Dim result As Long
result = YduPmcsWriteCmdBuf(0, PMC_AXIS_X0 + PMC_AXIS_Z0, &HE0)

C++/CLI

result = YduPmcsWriteCmdBuf(0, PMC_AXIS_X0 + PMC_AXIS_Z0, 0xE0);

C/C++

INT result = YduPmcsWriteCmdBuf(0, PMC_AXIS_X0 + PMC_AXIS_Z0, 0xE0);