DioGetPwmPulseDuty


Function

Retrieves the PWM pulse duty cycle for the specified channel.

Format

Ret = DioGetPwmPulseDuty( Id , ChNo , ChNum , PulseDuty )

Parameters

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
Specify the device ID retrieved from DioInit.

ChNo [ VB.NET: Short ] [ C, C++: short * ] [ C#: out short ] [ Python: ctypes.POINTER(ctypes.c_short) ]
Specify the start address of the array that stores the channel numbers to get setting.

ChNum [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
Specify the number of channels specified in ChNo.

PulseDuty [ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: out ushort ] [ Python: ctypes.POINTER(ctypes.c_ushort) ]
Specify the start address of the array that stores the PWM pulse duty cycle settings.

Setting range: 0% to 100% (1% unit)

Return Value

Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]

Definition

Value

[Dec]

Description

DIO_ERR_SUCCESS

0

Normal completed.

DIO_ERR_SYS_RECOVERED_FROM_STANDBY

7

Execute DioResetDevice function because the device has recovered from standby mode.

DIO_ERR_DLL_INVALID_ID

10001

Invalid ID specified.

DIO_ERR_DLL_CALL_DRIVER

10002

Not call the driver (Failure on DEVICE I/O CONTROL).

DIO_ERR_DLL_BUFF_ADDRESS

10100

Invalid data buffer address.

DIO_ERR_SYS_NOT_SUPPORTED

20001

This board couldn't use this function.

DIO_ERR_SYS_CH_NO

20105

Channel No. is outside the setting range.

DIO_ERR_SYS_CH_NUM

20106

Channel number is outside the setting range.

The others (See also: Details of Error Code)

Remarks

Retrieves the PWM pulse duty cycle for the specified channel.
The duty cycle is expressed in percentage units.

Example

Retrieves the PWM pulse duty cycle for channels 0 and 1.

VB.NET

Dim Ret As Integer
Dim ChNo(1) As Short
Dim PulseDuty(1) As UShort

ChNo(0) = 0
ChNo(1) = 1
Ret = DioGetPwmPulseDuty( Id , ChNo , 2 , PulseDuty )
 

C, C++

long Ret;
short ChNo[2];
unsigned short PulseDuty[2];

ChNo[0] = 0;
ChNo[1] = 1;
Ret = DioGetPwmPulseDuty( Id , &ChNo[0] , 2 , &PulseDuty[0] );
 

C#

int Ret;
short[] ChNo = new short[2];
ushort[] PulseDuty = new ushort[2];

ChNo[0] = 0;
ChNo[1] = 1;
Ret = dio.GetPwmPulseDuty( Id , out ChNo , 2 , out PulseDuty );
 

Python

Ret = ctypes.c_long()
ChNoType = ctypes.c_short * 2
ChNo = ChNoType()
PulseDutyType = ctypes.c_ushort * 2
PulseDuty = PulseDutyType()

ChNo[0] = 0
ChNo[1] = 1
Ret.value = cdio.DioGetPwmPulseDuty( Id , ChNo , 2 , PulseDuty )
 

See Also

DioSetPwmPulseDuty