Timer_ConfigCounter

Timer Funktionen


Syntax

 

void Timer_ConfigCounter(byte timer, byte portbit, byte edge, word irq_threshold);

 

Sub Timer_ConfigCounter(timer As Byte, portbit As Byte, edge As Byte, irq_threshold As Word)

 

 

Beschreibung

 

Die Funktion initialisiert einen Timer als Zähler. Es stehen die Eingänge COUNTA-0, COUNTA-1, COUNTA-2 und COUNTB-2 zur Verfügung (siehe Pinzuordnung). Es können für die COUNTA-x Eingänge nur die Timer 0,2,4 genutzt werden, für COUNTB-2 die Timer 1,3,5. Ist der Parameter irq_threshold ungleich Null, dann wird ein Interrupt ausgelöst, wenn der Zähler gleich dem Wert von irq_threshold ist. Nach einem Interrupt wird der Zähler wieder auf Null zurückgesetzt.

 

 Nach der Initialisierung behält der Zähler erstmal seinen alten Wert. Bei der ersten Flanke wird dann der Zähler auf Null gesetzt. Beim Auslesen des Zählers sieht es deshalb so aus, als ob eine Flanke zu wenig gezählt würde. Dieses Verhalten ist bedingt durch den Aufbau des internen Zählers des AVR32 Controllers.

 

Parameter

 

timer Nummer des Timers (0 - 5)
portbit (GPIO in Pinzuordnung )
edge Flankentyp CNT_FALLING (fallend) oder CNT_RISING (steigend)
irq_threshold Anzahl der Ereignisse wann ein IRQ ausgelöst wird