63
WITIO-PCIe192
ULTRA
© 2018 by Messcomp Datentechnik GmbH
DV0101
63
WITIO-PCIe192
ULTRA
© 2018 by Messcomp Datentechnik GmbH
EV0103
63
63
wasco
®
wasco
®
As several sources of a digital input edge interrupt are to consider, the
source lines to the register INTCON usually are conditioned. This means,
an additional 32 bit register can be applied to the respective bit of the re-
gister INTCON. In case of an edge detection of the digital inputs, this are
the registers DINF0CN1, DINF1CN1, DINF0CN2, DINF1CN2, DINF0CN3
and DINF1CN3. In these registers every bit represents one digital input
(see register description). Every single input can be armed individually to
be an interrupt source (DINFyeCNx) and enabled again after an interrupt
is triggered and serviced (DINFyrCNx).
The process completed, the respective bit in the register INTCON is set
to 0 automatically.
Application
1. How to configure
a) Check whether or not all interrupt sources are cleared (INTCON = 0)
b) Enable single interrupt sources (see documentations of the respective
peripherals)
c) Enable interrupt function (INTe = 1)
2. Interrupt routine
a) Identify interrupt source peripherals by reading INTCON and correspon-
ding peripheral register if required
b) Clear interrupt
c) Check if there are any outstanding interrupts (INTCON = 0?)
d) if c) is the case, clear all other interrupts as well
e) Enable again the interrupt function (INTr = 1)
Da z.B. bei einem digitalen Eingangsflankeninterrupt mehrere Quellen
in Frage kommen, werden die Quellleitungen zum Register INTCON
meist aufbereitet. Dies bedeutet, dass ein oder mehrere weitere 32Bit-
Register an dem jeweiligen Bit des INTCON-Registers anliegen kann.
Im Falle der Flankenerkennung der digitalen Eingänge sind dies die
Register DINF0CN1, DINF1CN1, DINF0CN2, DINF1CN2, DINF0CN3und
DINF1CN3. In dem Register stellt jedes Bit einen digitalen Eingang dar
(siehe Registerbeschreibung). Die einzelnen Eingänge können einzeln
als Interruptquelle freigegeben werden (DINFyeCNx) und nach einem
ausgelösten und bearbeiteten Interrupt wieder freigegeben werden
(DINFyrCNx).
Ist dies geschehen, geht das jeweilige Bit im Register INTCON automa
-
tisch auf 0.
Anwendung
1. Konfiguration
a) Überprüfen, ob alle Interruptquellen gelöscht sind (INTCON = 0)
b) Einzelne Interruptquellen freigeben (siehe Dokumentation der entspre-
chenden Peripherie)
c) Interruptfunktion freischalten (INTe = 1)
2. Interruptroutine
a) Interruptquellenperipherie identifizieren durch das Lesen von INTCON
und falls nötig entsprechender Peripherieregister
b) Interrupt löschen
c) Überprüfen, ob noch weitere Interrupts anliegen (INTCON = 0?)
d) falls c) nicht zutrifft, alle anderen Interrupts ebenfalls löschen
e) Interruptfunktion wieder freigeben (INTr = 1)