Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: schnelle Frequenzmessung Kategorie: Programmierung (von cris, http://www.crisullmann.de - 20.11.2003 10:55)
Als Antwort auf schnelle Frequenzmessung von Stefan Holland - 19.11.2003 13:13

Hallo Stefan,

für Dein Problem sehe ich 2 mögliche Lösungen.

1. Deine Impulse lösen einen Interrupt aus und Du kannst
dann jeden Puls einzeln vermessen.Du musst die ISR in Assembler programmieren.

2. Die Impulse werden am Frequenzmesseingang gemessen und
Du veränderts die Torzeit. Das Betriebssystem zählt die
Torzeit anhand eines 8ms Timers ab. Der Zähler für diese
 8ms Zeitabschnitte liegt auf Adresse 0xF89B. Ein Thread
 mit hoher Prio fragt diesen Zähler ab, wartet auf  
Zählerstand 5 (40ms), liest den Frequenzzähler aus und
setzt Frequenzzähler sowie 8ms-Zähler auf 0.

inline function get_T_8ms() returns byte
{
 inline vmcodes.VM_LOAD_ABSOLUTE_BYTE;
 inline 0xF89B
}

inline function set_T_8ms(byte inhalt)
{
 inline vmcodes.VM_STORE_ABSOLUTE_BYTE;
 inline 0xF89B
}

function read_frq() returns int
{
int Puffer;
 capture;
 Puffer=sfr.get_T3();  //FRQ lesen
 sfr.set_T3(0);           //FRQ reset
 set_T_8ms(0);         //Timer auf 0
 release;
 return Puffer;
}

GrĂĽĂ?e  Cris

Meine Seite: http://www.crisullmann.de


    Antwort schreiben


Antworten:

Re: schnelle Frequenzmessung (von Arnd Feige - 22.01.2004 13:10)