指定したチャネルのPWMパルスのデューティー比の設定を行います。
Ret = DioSetPwmPulseDuty( Id , ChNo , ChNum , PulseDuty )
Id
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
DioInitで取得したデバイスIDを指定します。
ChNo
[ VB.NET: Short ] [ C, C++: short * ] [ C#: out short ] [ Python: ctypes.POINTER(ctypes.c_short)
]
設定を行うチャネル番号を格納した配列の先頭アドレスを指定します。
ChNum
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
ChNoで指定したチャネル数を指定します。
PulseDuty
[ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: out ushort ] [ Python:
ctypes.POINTER(ctypes.c_ushort) ]
PWMパルスのデューティー比設定を格納した配列の先頭アドレスを指定します。
0の時がデューティー比0%、65535の時がデューティー比100%となります。
設定範囲:0 ~ 65535
Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]
定義 |
値 [Dec] |
意味 |
DIO_ERR_SUCCESS |
0 |
正常終了 |
DIO_ERR_SYS_RECOVERED_FROM_STANDBY |
7 |
スタンバイモードから復帰したため、DioResetDevice関数を実行してください |
DIO_ERR_DLL_INVALID_ID |
10001 |
無効なIDが指定されました。 |
DIO_ERR_DLL_CALL_DRIVER |
10002 |
ドライバーを呼び出せません(デバイスI/Oコントロールに失敗)。 |
DIO_ERR_DLL_BUFF_ADDRESS |
10100 |
データバッファアドレスが不正です。 |
DIO_ERR_SYS_NOT_SUPPORTED |
20001 |
このデバイスではこの関数は使用できません。 |
DIO_ERR_SYS_CH_NO |
20105 |
チャネル番号が指定可能範囲外です。 |
DIO_ERR_SYS_CH_NUM |
20106 |
チャネル数が指定可能範囲外です。 |
DIO_ERR_SYS_PWM_PULSE_DUTY |
20902 |
PWMパルスのデューティー比が指定可能範囲外です。 |
DIO_ERR_SYS_DEVICE_ERR_DRIVER_IC_ERR |
21200 |
ドライバICエラーが発生しました。 |
DIO_ERR_SYS_DEVICE_ERR_PCOM_FAILURE |
21201 |
PCOM電源異常が発生しました。 |
その他のエラー(参照:エラーコード詳細)
0
指定したチャネルのPWMパルスのデューティー比の設定を行います。
0の時がデューティー比0%、65535の時がデューティー比100%となります。
デューティ比の設定分解能を向上させるため、PulseDutyの設定範囲をパーセント値(0 - 100)からバイナリ値(0 - 65535)へ変更しています。(2026年7月公開)
バージョン更新の際はアプリケーションに影響がありますのでご注意ください。
- API-DIO(WDM) Ver.11.10以降
- CPSN-MCB271 (Firmware Ver.1.81以降)
- CC-USB271 (Firmware Ver.1.31以降)
チャネル0のデューティー比を30%(19660)、チャネル1のデューティー比を80%(52428)に設定します。
VB.NET |
Dim Ret As Integer |
C, C++ |
long Ret; |
C# |
int Ret; |
Python |
Ret = ctypes.c_long() |