Leveldetect input, Hardware considerations, Byte output example – Echelon I/O Model Reference for Smart Transceivers and Neuron Chips User Manual
Page 48
38
Direct I/O Models
}
when (io_changes(ioKeyboard)) {
character = input_value;
}
Byte Output Example
IO_0 output byte ioDisplay;
...
when (...) {
io_out(ioDisplay, '?');
}
Leveldetect Input
The leveldetect I/O model is used to detect a low level (logical zero) on a single
pin, for example, for a proximity detector.
This model applies to Series 3100 Neuron Chips and Smart Transceivers, and to
Series 5000 Neuron Processors and Smart Transceivers.
Hardware Considerations
Pins IO0 – IO7 can be individually configured as leveldetect input pins, which
latch a negative-going transition of the input level with a minimal low pulse
width of 200 ns for a Series 3100 Smart Transceiver with a 10 MHz input clock,
or a minimal low pulse width of 12.5 ns for a Series 5000 Smart Transceiver with
an 80 MHz system clock. The application can therefore detect short pulses on the
input which might be missed by software polling. This detection is useful for
reading devices, such as proximity sensors.
Important: This is the only direct I/O model that is latched before it is sampled.
The latch is cleared during the when statement sampling, and can be set again
immediately after, if another transition should occur (see Figure 13 on page 39).