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) |