Titelbild Mikrocontroller

12.10. Compare Match Output Einheit

Die Compare Output Mode Bits COM1x1 und COM1x0 haben zwei Funktionen. Zum einen verwendet der Waveform Generator die beiden Bits, um den Zustand des OC1x Registers bei der nächsten Vergleichsübereinstimmung festzulegen. Und zweitens kontrollieren die Bits die Ausgangsquelle des OC1x Pins. Das nachfolgende Bild zeigt das einfache Blockschaltbild der Logik, die durch die COM1x1 und COM1x0 Bits beeinflusst wird. Die I/O Register, die I/O Bits und die I/O Pins sind fett dargestellt, wobei von den Portkontrollregistern DDR und PORT nur der durch die Bits beeinflusste Teil dargestellt ist. Wenn auf den Zustand des OC1x verwiesen wird, so ist damit das interne Register OC1x gemeint und nicht der OC1x Pin. Bei einem Systemreset wird das OC1x Register auf 00 gesetzt.
Blockschaltbild Compare Match Output Einheit

Blockschaltbild Compare Match Output Einheit


Die allgemeine I/O Portfunktion wird durch den Output Compate (OC1x) überschrieben, wenn eines der beiden Bits COM1x1 oder COM1x0 gesetzt ist. Allerdings wird Richtung des OC1x Pins (Eingang oder Ausgang) nach wie vor durch durch das Data Direction Register (DDR) bestimmt. Das Richtungsbit für die OC1x Pins (DDR_OC1x) muss als Ausgang gesetzt werden, bevor der Wert von OC1x am Ausgang sichtbar wird. Die überschreibende Funktion ist grundsätzlich unabhängig von dem ausgewählten Waveform Generator Modus. Allerdings gibt es einige Ausnahmen, die in den nachfolgenden Tabellen ersichtlich sind.

Das Design der Output Compare Pin Logik erlaubt das Initialisieren des OC1x Zustandes bevor der Ausgang freigegeben wird. Einige COM1x1 / COM1x0 Kombinationen sind für spätere Funktionen reserviert (siehe Beschreibung der Register). Die beiden COM1x Bits haben keinen Einfluss auf die Input Capture Einheit.

Compare Output Modus und Waveform Generation

Der Waveform Generator verwendet die COM1x1 und COM1x0 Bits in den Modi normal, CTC und PWM unterschiedlich. In allen Fällen wird bei einer Vergleichsübereinstimmung keine Aktion ausgelöst, wenn beide Bits auf 0 gesetzt sind. Weitere Details in den späteren Tabellen.
Impressum