The IO8 peripheral controls IO8 card which gives you eight binary outputs and eight binary inputs.
Hardware:
The io8 card has eight 5 Volt tolerant inputs and eight 3.3 Volt outputs. The IO8 peripheral can be configured so that a change on an input line automatically sends the input status up to the host. More information about the IO8 card is available here: /cards/io8.html
Resources:
output : the value on the output pins as a 2 digit hex value. You can read and write this resource using pcget and pcset.
input : the value on the input pins. This resource works with pcget and pccat. A read (pcget) requires a round trip to the FPGA and may take a few milliseconds. You can monitor the input pins using a pccat command. Using pccat makes sense only if one or more of the pins are configured as an interrupt-on-change pin.
interrupt : an 'interrupt-on-change' enable mask as a 2 digit hex value. When an input pin has its corresponding interrupt bit set any change in value on that pin causes an update to be sent to the host. This feature makes reading the input pins something that can be done using select(). This resource works with pcget and pcset.
Examples:
Set the IO8 outputs to 0x66.
pcset io8 output 66
Set the first four inputs to interrupt-on-change and then start a stream of IO8 input values.
pcset io8 interrupt f pccat io8 input