47
OPTOIO-PCIe16
ULTRA
© 2017 by Messcomp Datentechnik GmbH
DV01
47
OPTOIO-PCIe16
ULTRA
© 2017 by Messcomp Datentechnik GmbH
EV04
47
47
wasco
®
wasco
®
10. Output Compare Unit
The board WASCO-PCIe8117 brings the option to the user to link a PWM
function to the outputs or to return discrete pulses via the Output Compare
Units. In this case, square-wave signals with a period duration of 2 to 2
32
µs and a pulse duration of 1 to 2
32
µs can be generated.
Attention: although the OC unit enables a resolution in a microsecond
range, due to the output optocoupler specifications only graduations in
millisecond range make sense.
10.1 PWM
The Output Compare Units enable the user to apply a PWM to any opto-
coupler output.
10.1.1 Operating principle
In order to realize the PWM, the OC Unit is using a writable 32-bit timer with
adjustable period duration in µs (OCPERIODx) and a two-level compare
register (OCUNITORx) to set the pulse duration in µs. If the OC Unit is
deactivated, there is a LOW at the output (optocoupler output blocks). If
the OC Unit is started in PWM mode, the timer starts counting in µs-clock
and the OC output remains LOW. When the timer reaches the value in the
register OCPERIODx, it will run over to the next cycle and start counting
again at 0. Also at an overflow, the pipeline register connected to the timer
will take-over the pulse duration configured in the register OCUNITORx,
as soon as the OC output is set to HIGH (provided the pulse duration is
not 0µs). When the timer value (OCTIMERx) matches the value of the
pipeline register connected to the timer, the output will be set to LOW until
the next timer overflow.
10. Output-Compare-Einheit
Mit der Output-Compare-Einheit (OC-Unit) ermöglicht die WASCO-
PCIe8117-Karte dem Anwender, an die Optokopplerausgänge eine PWM-
Funktion zu koppeln oder einzelne Pulse auszugeben. Dabei können
Rechtecksignale mit ein Periodendauer von 2 bis 2
32
µs und einer Pulsdauer
von 1 bis 2
32
µs erzeugt werden.
Achtung: Während die OC-Einheit eine Auflösung im Mikrosekundenbereich
ermöglicht, sind aufgrund der Ausgangsoptokopplerspezifikationen nur
Staffelungen im Millisekundenbereich sinnvoll.
10.1 PWM
Die OC-Einheit ermöglicht es dem Anwender, an jedem beliebigen
Optokopplerausgang eine PWM anzulegen.
10.1.1 Funktionsweise
Um die PWM zu realisieren, verwendet die OC-Einheit einen beschreib-
baren 32Bit-Timer mit einstellbarer Periodendauer in µs (OCPERIODx)
und ein Zwei-Stufen-Compare-Register (OCUNITORx) zur Einstellung der
Pulsdauer in µs. Ist die OC-Einheit deaktiviert, so liegt am Ausgang ein
LOW an (Optokopplerausgang sperrt). Wird die OC-Einheit im PWM-Modus
gestartet, beginnt der Timer im µs-Takt zu zählen und der OC-Ausgang
bleibt auf LOW. Erreicht der Timer den Wert im Register OCPERIODx,
so läuft er zum nächsten Takt über und beginnt mit dem Zählen wieder
bei 0. Des weiteren wird beim Überlauf die konfigurierte Pulsdauer aus
dem OCUNITORx-Register in das am Timer anliegende Pipeline-Register
übernommen, sowie der OC-Ausgang auf HIGH gesetzt (vorausgesetzt
die Pulsdauer ist nicht 0µs). Entspricht der Timerwert (OCTIMERx) dem
Wert des am Timer anliegenden Pipeline-Registers, so wird der Ausgang
bis zum nächsten Timer-Überlauf auf LOW gesetzt.