INFO - FAQ - CC2-Forum - CCPro-Forum |
Hallo Dietmar, danke fuer den Tipp, das sollte bei mir funktionieren, da ich das ein/aus Signal von einer 2ten OM bekomme und nur die Zeitdauer intern berechnen muss, kann ich die schneller laufende Uhr per Software kompensieren. Läuft bei 100Hz PWM Takt die Uhr genau doppelt so schnell? Gruss Michael > Hallo miteinander > > Ein höherer PWM-Takt ist realisierbar, indem einfach der Vorteiler (Prescaler) vom TIM auf einen anderen Wert gesetzt wird. Dadurch wird allerdings der TIMER-Interrupt des Betriebssystems haeufiger aufgerufen. Das heißt u.a. PAUSE und die Uhr arbeiten schneller. Hier der Code in OCBASIC: > > DEFINE TSC IVAR [161] ' TIM Status and Control Register > > ' Der 'TIM Clock Source' wird vom internen Bustakt abgeleitet. Ein Prescaler > ' legt fest, in welchem Frequenzverhaeltnis die beiden Takte stehen. Der > ' Bustakt ist bei der OM standardmaessig 3.2 MHz. Der TIM-Takt kann 50 kHz > ' bis 3.2 MHz betragen. Dieser TIM-Takt wird mittels Modulo-Register durch > ' 1000 geteilt und ergibt den TIMER-, bzw. PWM-Takt. Standardmaessig liegt > ' er bei 50 Hz. Die TIMER-Variable der OM wird deshalb alle 20 ms erhoeht. > > ' TIM Clock Source = 3.2E6 / 2^N > ' N = 4*PS2 + 2*PS1 + PS0; N<>7 > > ' +---PS2 > ' |+--PS1 > ' TOIE-+ ||+-PS0 > ' | ||| > TSC=&b01000110 '50 Hz TIMER- und PWM-Takt > TSC=&b01000101 '100 Hz > TSC=&b01000100 '200 Hz Durch Aendern des Modulo-Registers sind > TSC=&b01000011 '400 Hz auch hoehere PWM-Takte realisierbar. > TSC=&b01000010 '800 Hz Dazu waere aber eine Anpassung des PWM- > TSC=&b01000001 '1600 Hz Moduls erforderlich und der TOFL-Interrupt > TSC=&b01000000 '3200 Hz sollte deaktiviert werden (TOIE=0). > > Viele Grüße > Dietmar |
Antwort schreiben |