CntSetPulseWidth


Function

Sets the one-shot pulse width. Supports multi-processing.

Format

Ret = CntSetPulseWidth ( Id , ChNo , PlsWidth )

Parameters

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

ChNo [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
Specify the channel number for setting.

PlsWidth [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
Specify the one-shot pulse width with a coefficient.
Select the coefficient from the following table.

Coefficient

Pulse Width

0h

0

1h

Approx. 409.6us

2h

Approx. 819.2us

3h

Approx. 1.23ms

4h

Approx. 4.92ms

5h

Approx. 10.24ms

6h

Approx. 20.07ms

7h

Approx. 29.9ms

8h

Approx. 40.14ms

9h

Approx. 49.97ms

Ah

Approx. 60.2ms

Bh

Approx. 70.04ms

Ch

Approx. 80.28ms

Dh

Approx. 90.11ms

Eh

Approx. 100.35ms

Fh

Approx. 104.45ms

Return Value

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

Definition

Value

Description

CNT_ERR_SUCCESS

0

Normality completion

CNT_ERR_SYS_RECOVERED_FROM_STANDBY

7

Execute the function CntResetDevice to return from the standby mode.

CNT_ERR_DLL_INVALID_ID

10001

Invalid ID was specified.

CNT_ERR_DLL_CALL_DRIVER

10002

CNT driver can't be called (Failed in the device I/O control).

CNT_ERR_DLL_MODE

10100

Invalid mode setting.

CNT_ERR_SYS_BOARD_EXECUTING

20002

Cannot use while by another device works.

CNT_ERR_SYS_MODE

20100

Invalid mode setting.

CNT_ERR_SYS_CH_NO

20201

Channel number is out of range.

The others: (See also: Details of Error Code)

Initial Value

Coefficient=0

Remarks

Specifies the one-shot pulse width when count match occurred.
It is possible to change the mode while the counter is working, that is different from other modes.

For the device with sampling function, please use CntSetOutputHardwareEvent.

Specifications based on devices

CNT24-4(PCI)H

PulseWidth is common to all channels. Other words, PulseWidth cannot set the different value for each channel.

CNT24-4D(PCI)H

PulseWidth is common to all channels. Other words, PulseWidth cannot set the different value for each channel.

CNT-3204MT-LPE
CNT32-4MT(LPCI)

Not supported

Please use CntSetOutputHardwareEvent function instead.

CNT-3208M-PE
CNT32-8M(PCI)

Not supported

Please use CntSetOutputHardwareEvent function instead.

CNT-3204IN-USB

Not supported

Please use CntSetOutputHardwareEvent function instead.

CPS-CNT-3202I
CPSN-CNT-3201I

PulseWidth can set the different value for each channel.

Example

Sets the pulse width of channel 0 to about 409.6us.

VB.NET

Dim Ret As Integer
Ret = CntSetPulseWidth ( Id , 0 , 1 )
 

C, C++

long Ret;
Ret = CntSetPulseWidth ( Id , 0 , 1 );
 

C#

int Ret;
Ret = cnt.SetPulseWidth ( Id , 0 , 1 );
 

Python

Ret = ctypes.c_long()
Ret.value = ccnt.CntSetPulseWidth ( Id , 0 , 1 )
 

See Also

CntGetPulseWidth CntSetOutputHardwareEvent