xPCI-1500 API

Functions

_INT_ i_PCI1500_InitWatchdogCounter3 (HANDLE h_DeviceHandle, BYTE b_ComponentMode, WORD w_ReloadValue, BYTE b_EnableContinuousCycle, BYTE b_EnableHardwareGate, BYTE b_EnableInterrupt)
 
_INT_ i_PCI1500_StartWatchdogCounter3 (HANDLE h_DeviceHandle)
 
_INT_ i_PCI1500_StopWatchdogCounter3 (HANDLE h_DeviceHandle)
 
_INT_ i_PCI1500_TriggerWatchdogCounter3 (HANDLE h_DeviceHandle)
 
_INT_ i_PCI1500_ReadWatchdogCounter3 (HANDLE h_DeviceHandle, PWORD pw_TimerValue)
 

Detailed Description

Function Documentation

_INT_ i_PCI1500_InitWatchdogCounter3 ( HANDLE  h_DeviceHandle,
BYTE  b_ComponentMode,
WORD  w_ReloadValue,
BYTE  b_EnableContinuousCycle,
BYTE  b_EnableHardwareGate,
BYTE  b_EnableInterrupt 
)

Initializes the component 3 as a watchdog or a counter.
Important! The WatchdogCounter component internally operates with half of the input frequency.
If the WatchdogCounter is set as a watchdog, the time period is defined by (2*w_ReloadValue)/InputClock, where InputClock is the value of the input clock in Hz.

This WatchdogCounter, when configured as a counter supports hardware gate. When hardware gate is enabled, then the counter is only counting if the gate input is high.

If the counter is used, input 15 acts as the counter input
If the hardware gate is enabled, input 16 acts as the gate input

Parameters
[in]h_DeviceHandleHandle of the board
[in]b_ComponentModeSelects the component mode ( PCI1500_WATCHDOG or PCI1500_COUNTER )
[in]w_ReloadValueDefines the starting value of the WatchdogCounter
[in]b_EnableContinuousCycleReset the WatchdogCounter to us_ReloadValue after each interrupt, and continue counting (0 disable, 1 enable)
[in]b_EnableHardwareGateEnable the hardware gate on pin 27 input 16 (0 disable, 1 enable)
[in]b_EnableInterruptAn interrupt is generated each time the watchdog or the counter expires (0 disable, 1 enable)
Returns
0 : No Error
-1 : Invalid mode
-2 : Wrong device handle
-3 : Error while calling IOCTL function (wrong handle ?)
_INT_ i_PCI1500_StartWatchdogCounter3 ( HANDLE  h_DeviceHandle)

Starts the watchdog counter 3 as a watchdog or a counter (depending on how you initialized it)

Parameters
[in]h_DeviceHandleHandle of the board
Returns
0 : No Error
-1 : Wrong device handle
-2 : The component is still started, stop it before trying to restart it
-3 : The component is not initialized
-4 : Error while calling IOCTL function (wrong handle ?)
_INT_ i_PCI1500_StopWatchdogCounter3 ( HANDLE  h_DeviceHandle)

Stops the watchdog counter 3

Parameters
[in]h_DeviceHandleHandle of the board
Returns
0 : No Error
-1 : Wrong device handle
-2 : Nothing is started on the component (so nothing to stop)
-3 : Error while calling IOCTL function (wrong handle ?)
_INT_ i_PCI1500_TriggerWatchdogCounter3 ( HANDLE  h_DeviceHandle)

Triggers the watchdog counter 3, resetting its value

Parameters
[in]h_DeviceHandleHandle of the board
Returns
0 : No Error
-1 : Wrong device handle
-2 : Nothing is started on the component (so nothing to trigger)
-3 : Error while calling IOCTL function (wrong handle ?)
_INT_ i_PCI1500_ReadWatchdogCounter3 ( HANDLE  h_DeviceHandle,
PWORD  pw_TimerValue 
)

Reads the watchdog counter 3 current value

Parameters
[in]h_DeviceHandleHandle of the board
[out]pw_TimerValueCurrent value of the watchdog counter
Returns
0 : No Error
-1 : Wrong device handle
-2 : Nothing is started on the component (so nothing to read)
-3 : Error while calling IOCTL function (wrong handle ?)