# XPCI-3009 Samples

This file describes the samples for the board XPCI-3009.

---

## analog_output.c

This sample enables to set an analog output of the board to a selected value.

---

## autorefresh.c

This sample starts an autorefresh acquisition. The sample doesn't use interrupt or DMA.

---

## counter_without_interrupt.c

This sample enables to test the counter of the board (not the counter of the APCI-1710 part). The sample uses the input that are on the board, with the parallel cable. The pins that are to use are: 20 for counter 2, 21 for counter 1 and 20 for counter 0.

---

## counter.c

This sample runs a counter with interruption. Each time that the counters value is 0, the counter will generate an interruption.

---

## read_1_analog_input.c

This sample enables to read one analog input of the board.

---

## sample_xpci3009_compare.c

This sample is used to test the counter functionality of the APCI-1710 part. We run a counter on the FPGA, and when the value of the counter is superior to a certain value, the counter functionality throws an exception. We use the pin A, A- and B, B- of the APCI-1710 part.

---

## sample_xpci3009_digital_in.c

This sample enables to test the digital I/O functionality of the APCI-1710 part. The sample reads the digital input (A to H) of the module.

---

## sample_xpci3009_digital_out.c

This sample enables to test the digital I/O functionality of the APCI-1710 part. The sample put the output to 1. To have 24V on the E,F,G,H output you have to put a voltage of 24V in the pin 13 (of the 15-pin cable) or in the pin 9 of the orange system.

---

## sample_xpci3009_inc_counter.c

This sample enables to test the counter functionality of the APCI-1710 part. The sample runs the counter and shows the value of the counter. We use the pin A,A- for the incrementation of the counter, and B,B- for the decrementation.

---

## sequence.c

This sample enables to run a sequence acquisition. It uses DMA and interruptions.

---

## timer.c

This sample enables to test the timer of the board (non APCI-1710 part). It uses interruptions.

---

## watchdog_interrupt.c

This sample enables to test the watchdog of the board (non APCI-1710 part). It sets an output to 1 and then starts a watchdog. At the end of the watchdog, the output should be set to 0. Watchdog 0 is for analogic output and watchdog 1 for digital output. When the value of the watchdog is 0, the watchdog throws an interruption.

---

## watchdog.c

This sample enables to test the watchdog of the board (non APCI-1710 part). It sets an output to 1 and then starts a watchdog. At the end of the watchdog, the output should be set to 0. Watchdog 0 is for analogic output and watchdog 1 for digital output.
