CNT-Erweiterung
Programmbeispiel
28
7.3.2 Vier-Flanken-Auswertung
Dieser Modus ermittelt Takt und Zählrichtung aus zwei Rechteck-Signalen, die
an den Eingängen A und B um 90 Grad versetzt anliegen. Die Zählrichtung
ergibt sich aus der zeitlichen Abfolge mit der die steigenden und fallenden
Flanken der beiden Signale eintreffen.
4-Flanken-
Auswertung
A
4k7
B
4k7
CLR
4k7
Abb. 18 – Schema CNT-Erweiterung im Modus
Berücksichtigen Sie bitte:
– Der Zähler registriert bei einem Zyklus des A/B-Signals 4 Flanken.
– Die maximale Zählfrequenz beträgt 20MHz. Gemeinsam mit den 4
Flanken je Zyklus ergibt sich daraus eine maximale Eingangsfrequenz
von 5MHz.
– Der Abstand zwischen einer Flanke an A und einer Flanke an B darf
50ns nicht unterschreiten. Impulsbreiten oder Pausenzeiten kürzer als
100ns werden nicht gezählt.
– Eine Änderung der Phasenverschiebung hat Einfluss auf die maximale
Eingangsfrequenz wegen der Mindestabstände der Flanken. Bei einem
Abweichen von 90 Grad sinkt die maximale Eingangsfrequenz von
5MHz beispielsweise bei 45 Grad auf 2,5MHz.
#Include
ADwinGoldII.inc
Init:
...
Cnt_Enable(0)
Cnt_Clear(0001b)
Rem Betriebsmodus Zähler 1 einstellen:
Rem Bit 0: Modus A/B = Vierflankenauswertung
Rem Bit 1: Löschmodus mit Clr-Eingang
Rem Bit 2: Eingang A/CLK nicht invertieren
Rem Bit 3: Eingang B/DIR nicht invertieren
Rem Bit 4: Eingang CLR/LATCH als CLR-Eingang
Rem Bit 5: Eingang CLR/LATCH freigeben
Cnt_Mode(1,100001b)
Cnt_SE_Diff(1111b)
Cnt_Enable(0001b)
...
Event:
...
Cnt_Latch(0001b)
val
= Cnt_Read_Latch(0001b)
32-Bit Latch A
CLK
DIR
DIR
32-Bit Zähler
CLR
EN
1
Kontroll-Register
„4-Flanken-Auswertung"
'alle Zähler anhalten
'Zähler 1 löschen
'Alle Eingänge differentiell
'Zähler 1 starten
'Zähler 1 latchen
'Latch-Wert lesen
ADwin-Gold II, Handbuch Dez. 2018
ADwin
Data
Data