ich war hier: InitCounter

Version [75276]

Dies ist eine alte Version von InitCounter erstellt von FabianEndres am 2017-01-01 20:41:56.

 

InitCounter

Syntax:

int InitCounter (unsigned char cnum, unsigned char mod, unsigned char numbsys);

Beschreibung:

Die Funktion legt die Betriebsart eines einzelnen Zählers des Timer-Bausteins
8253 fest. Einstellbar ist dabei der Modus und die Zählweise des jeweiligen
Zählers. Erst nach der Initialisierung eines Zählers kann der gewünschte
Startwert, mit Hilfe der Funktion WriteCounter, festgelegt werden. Das Lesebzw. Schreibformat der 16-bit Zähl- bzw. Reload-Register ist unveränderlich
festgelegt. Ein Zugriff beginnt stets mit dem LSB14, direkt, d.h. ohne
zusätzliches Steuerkommando, gefolgt von dem MSB15. Zum Start der Zähler 1
und 2 müssen die Freigaben GATE 1 und GATE 2 über den Parallel-Baustein
(PC1 und PC2) freigeschaltet werden.

Parameter:

cnum Nummer des Zählers (0, 1, 2)
mod Modus (0, 1, 2, 3, 4, 5) (siehe Anhang für Hinweise)
numbsys Zählweise (0-Binär, 1-BCD)

Rückgabewerte

Rückgabe Bedeutung
0 OK
-1 ungültige Parameter
1 sonstige Fehler

Beispiel:

// Erzeugen einer Frequenz von 2 Hz mit Hilfe der
// Zähler 0 und 1 des Peripherie-IC`s 8253
if( ! OpenPLXDevice())
{
// Zähler 0 initialisieren InitCounter(0,3,0); // Startwert für Zähler 0 setzen WriteCounter(0,0x0600); // Zähler 1 initialisieren InitCounter(1,3,0); // Startwert für Zähler 1 setzen WriteCounter(1,0x03E8); // Parallelbaustein initialisieren StdInit8255(); // Freigabe G1 durch PC.1 aktivieren SetBitPortC( 1, 1); // Handle schließen ClosePLXDevice();
}
else
printf("Fehler");
Diese Seite wurde noch nicht kommentiert.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki