Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Timer_T3GetPM(void); Kategorie: Programmierung C (von UlliS - 19.10.2009 9:36)
Als Antwort auf Timer_T3GetPM(void); von mgolbs - 18.10.2009 18:25
Ich nutze:
C-Control Pro Mega32, C-Control Pro Mega128, CC-Pro 32 Application Board, CC-Pro 128 Application Board, Pro-Bot128
> Hallo,
>
> ich habe ein Sensorsignal welches immer 40% high und zu 60% low ist.
> Die Frequenz liegt im Bereich 15...130Hz.
>
> Ich will mit der Mega32 die tatsächliche Zeit Messen (us oder ms)
> von Beginn high zu wieder high, oder auch das tatsächliche Zeitfenster
> wo low oder high anliegt.
>
> Dabei sollte das Zeitfenster in min. "1/180" des Zeitfensters aufteilbar
> sein. Mathematisch/physikalisch  sollte das bei 14MHz problemlos möglich
> sein.
>
> Wenn ich die Doku richtig verstehe, kann ich mit
> void Timer_T3PM(byte Mode,byte PS); PS_1 (1) >> 67,8 ns setzen.
> Wenn das Sensorsignal wieder auf high geht, kann ich dann mit
> Timer_T3GetPM(void); die Vielfachen von PS_1 (1) auslesen?
>
> Im Anschluss will ich eine Pause mit Vielfachen von PS_1 (1) an einem
> Port ausgeben.
>
> Ist das Ziel mit den Maga's möglich?
>
> �ber eine Info oder einen Tipp würde ich mich freuen.
>
> GruÃ? Markus
>  

Hallo Markus,

Timer_T3PM (allgemein Timer 3) ist nur bei der Mega128 verfügbar.
Du könntest bei der Mega32 jedoch den Timer1 verwenden.

void Timer_T1PM(byte Mode,byte PS);
void Timer_T1PM(Mode As Byte,PS As Byte)

Beschreibung:
Diese Funktion legt fest, ob eine Pulsbreiten- oder Periodenmessung durchgeführt werden soll,
initialisiert den Timer_1 für die Messung und setzt den Vorteiler.

Parameter:
Mode  0 = Pulsweitenmessung,  1 = Periodenmessung
PS    Vorteiler

Tabelle prescaler:

Vorteiler (prescaler)   Zeitbasis (Dauer eines Ticks)
PS_1 (1)                   67,8 ns
PS_8 (2)                   542,5 ns
PS_64 (3)                 4,34 µs
PS_256 (4)               17,36 µs
PS_1024 (5)              69,44 µs
 

Grü�e Ulli


    Antwort schreiben


Antworten:

Re: Timer_T3GetPM(void); (von mgolbs - 19.10.2009 12:29)
    Re: Timer_T3GetPM(void); (von UlliS - 19.10.2009 14:53)
        Re: Timer_T3GetPM(void); (von mgolbs - 20.10.2009 12:34)