Manual PCI-DA12-8/16
20
Chapter 6: 8254 Counter/Timer
These cards contain a type 8254 programmable counter/timer that allows you to implement such
functions as a Real Time Clock, Event Counter, Digital One-Shot, Programmable Rate Generator, Binary
Rate Multiplier, Complex Wave Generator and/or a Motor Controller. The 8254 consists of three, 16-bit,
presettable, down counters. Each counter can be programmed to any count between 1 or 2 and 65,535 in
binary format depending on the mode chosen.
Operational Modes
The 8254 modes of operation are described in the following paragraphs to familiarize you with the
versatility and power of this device. For those interested in more detailed information, a full description of
the 8254 programmable interval timer can be found in the Intel (or equivalent manufacturers') data
sheets. The following conventions apply for use in describing operation of the 8254 :
Clock:
A positive pulse into the counter's clock input
Trigger:
A rising edge input to the counter's gate input
Counter Loading:
Programming a binary count into the counter
Mode 0: Pulse on Terminal Count
After the counter is loaded, the output is set low and will remain low until the counter decrements to zero.
The output then goes high and remains high until a new count is loaded into the counter. A trigger
enables the counter to start decrementing.
Mode 1: Retriggerable One-Shot
The output goes low on the clock pulse following a trigger to begin the one-shot pulse and goes high
when the counter reaches zero. Additional triggers result in reloading the count and starting the cycle
over. If a trigger occurs before the counter decrements to zero, a new count is loaded. This forms a
retriggerable one-shot. In mode 1, a low output pulse is provided with a period equal to the counter count-
down time.
Mode 2: Rate Generator
This mode provides a divide-by-N capability where N is the count loaded into the counter. When
triggered, the counter output goes low for one clock period after N counts, reloads the initial count, and
the cycle starts over. This mode is periodic, the same sequence is repeated indefinitely until the gate
input is brought low. This mode also works well as an alternative to mode 0 for event counting.
Mode 3: Square Wave Generator
This mode operates like mode 2. The output is high for half of the count and low for the other half. If the
count is even, then the output is a symmetrical square wave. If the count is odd, then the output is high
for (N+1)/2 counts and low for (N-1)/2 counts. Periodic triggering or frequency synthesis are two possible
applications for this mode. Note that in this mode, to achieve the square wave, the counter decrements by
two for the total loaded count, then reloads and decrements by two for the second part of the wave form.
Mode 4: Software Triggered Strobe
This mode sets the output high and, when the count is loaded, the counter begins to count down. When
the counter reaches zero, the output will go low for one input period. The counter must be reloaded to
repeat the cycle. A low gate input will inhibit the counter.