Echelon Neuron C User Manual
Page 169

Neuron C Programmer’s Guide
157
• Infrared Input
• Infrared Pattern Output
• Oneshot Output
• Ontime Input
• Period Input
• Pulsecount Input
• Pulsecount Output
• Pulsewidth Output
• Stretched Triac
• Triac
• Triggeredcount Output
Note that the totalcount input and quadrature input I/O models are not
supported by timer/counter interrupts, because the interrupt would not trigger
until you called the io_in() function, which eliminates the need for an
timer/counter interrupt for these two I/O models.
For timer/counter I/O models that use multiplexed I/O pins, you can declare an
interrupt task for only one of the pins. Declaring an interrupt for more than one
of the multiplexed pins yields an error (NCC#584). For example:
IO_4 input pulsecount ded pulsecount_A;
IO_5 input pulsecount mux pulsecount_B;
IO_6 input pulsecount mux pulsecount_C;
IO_7 input pulsecount mux pulsecount_D;
interrupt(pulsecount_B){
// process the interrupt for the pulsecount
// multiplexed I/O object
}
interrupt(pulsecount_C){
// You cannot define a second interrupt task for the
// pulsecount multiplexed I/O object
// Compiler issues NCC#584:
// “The hardware timer/counter unit is already used with
// a different interrupt task”
}
Timer/counter interrupts for the following I/O models use overflow interrupt
triggering:
• Dualslope input
• Frequency output
• Infrared pattern output
• Oneshot output
• Pulsecount output
• Pulsewidth output
• Triggered count output
Note: Triggering the interrupt on overflow for the dualslope input model means
that the interrupt occurs at the end of the second integration period.
Timer/counter interrupts for the following I/O models use latch interrupt
triggering:
• Edgelog input