WPILibC++ 2025.2.1
Loading...
Searching...
No Matches
DIO.h File Reference
#include <stdint.h>
#include "hal/Types.h"

Go to the source code of this file.

Functions

HAL_DigitalHandle HAL_InitializeDIOPort (HAL_PortHandle portHandle, HAL_Bool input, const char *allocationLocation, int32_t *status)
 Creates a new instance of a digital port.
 
HAL_Bool HAL_CheckDIOChannel (int32_t channel)
 Checks if a DIO channel is valid.
 
void HAL_FreeDIOPort (HAL_DigitalHandle dioPortHandle)
 Frees a DIO port.
 
void HAL_SetDIOSimDevice (HAL_DigitalHandle handle, HAL_SimDeviceHandle device)
 Indicates the DIO channel is used by a simulated device.
 
HAL_DigitalPWMHandle HAL_AllocateDigitalPWM (int32_t *status)
 Allocates a DO PWM Generator.
 
void HAL_FreeDigitalPWM (HAL_DigitalPWMHandle pwmGenerator)
 Frees the resource associated with a DO PWM generator.
 
void HAL_SetDigitalPWMRate (double rate, int32_t *status)
 Changes the frequency of the DO PWM generator.
 
void HAL_SetDigitalPWMDutyCycle (HAL_DigitalPWMHandle pwmGenerator, double dutyCycle, int32_t *status)
 Configures the duty-cycle of the PWM generator.
 
void HAL_SetDigitalPWMPPS (HAL_DigitalPWMHandle pwmGenerator, double dutyCycle, int32_t *status)
 Configures the digital PWM to be a PPS signal with specified duty cycle.
 
void HAL_SetDigitalPWMOutputChannel (HAL_DigitalPWMHandle pwmGenerator, int32_t channel, int32_t *status)
 Configures which DO channel the PWM signal is output on.
 
void HAL_SetDIO (HAL_DigitalHandle dioPortHandle, HAL_Bool value, int32_t *status)
 Writes a digital value to a DIO channel.
 
void HAL_SetDIODirection (HAL_DigitalHandle dioPortHandle, HAL_Bool input, int32_t *status)
 Sets the direction of a DIO channel.
 
HAL_Bool HAL_GetDIO (HAL_DigitalHandle dioPortHandle, int32_t *status)
 Reads a digital value from a DIO channel.
 
HAL_Bool HAL_GetDIODirection (HAL_DigitalHandle dioPortHandle, int32_t *status)
 Reads the direction of a DIO channel.
 
void HAL_Pulse (HAL_DigitalHandle dioPortHandle, double pulseLengthSeconds, int32_t *status)
 Generates a single digital pulse.
 
void HAL_PulseMultiple (uint32_t channelMask, double pulseLengthSeconds, int32_t *status)
 Generates a single digital pulse on multiple channels.
 
HAL_Bool HAL_IsPulsing (HAL_DigitalHandle dioPortHandle, int32_t *status)
 Checks a DIO line to see if it is currently generating a pulse.
 
HAL_Bool HAL_IsAnyPulsing (int32_t *status)
 Checks if any DIO line is currently generating a pulse.
 
void HAL_SetFilterSelect (HAL_DigitalHandle dioPortHandle, int32_t filterIndex, int32_t *status)
 Writes the filter index from the FPGA.
 
int32_t HAL_GetFilterSelect (HAL_DigitalHandle dioPortHandle, int32_t *status)
 Reads the filter index from the FPGA.
 
void HAL_SetFilterPeriod (int32_t filterIndex, int64_t value, int32_t *status)
 Sets the filter period for the specified filter index.
 
int64_t HAL_GetFilterPeriod (int32_t filterIndex, int32_t *status)
 Gets the filter period for the specified filter index.