Forum: Mikrocontroller und Digitale Elektronik 3 Rechteck-Ausgangssignale mit ATTiny25 ?


von Max Kleinmann (Gast)


Lesenswert?

Hallo,

ich benötoge 3 Rechnecksignale (PWM) mit 2,73kHz, 6kHz, 2,4kHz.
Die Ausgangssignale sollen ein Duty Cycle von 50% haben und gleichzeitig 
an drei Ausgängen des Controllers verfügbar sein.

Ich habe hier noch zwei Tiny25 im DIL Gehäuse rumliegen. Ist es 
irgendwie möglich mit den zwei 8bit-Timern des Tiny25 dies zu 
realisieren? Oder muss ich wirklich einen AVR mit 3 Timern nehmen.

Habe gesehen dass Timer0 am Tiny25 zwei PWM Channels hat. Leider ist mir 
beim lesen des Datenblattes nicht ganz klar geworden ob diese 
gleichzeitig nutzbar sind oder nur nacheinander. Weil wenn mand iese 
gleichzeitig nutzen könnte dann kann ich ja eine PWM mit Timer1 erzeugen 
indem ich einen Interrupt mit der doppelten frequenz von 2,73kHz erzeuge 
und darin einen Ausgang toggle.

Hoffe ihr könnt mir helfen...

Viele Grüße!

von Floh (Gast)


Lesenswert?

Max Kleinmann schrieb:
> 2,73kHz, 6kHz, 2,4kHz.

Schau mal noch Software-PWM.
Das kriegt n AVR locker hin.

von spess53 (Gast)


Lesenswert?

Hi

>Schau mal noch Software-PWM. Das kriegt n AVR locker hin.

Und was hat das hier mit PWM zu tun?

>Habe gesehen dass Timer0 am Tiny25 zwei PWM Channels hat. Leider ist mir
>beim lesen des Datenblattes nicht ganz klar geworden ob diese
>gleichzeitig nutzbar sind oder nur nacheinander.

Die sind schon gleichzeitig nutzbar. Aber nur mit der gleichen Frequenz.

>kann ich ja eine PWM mit Timer1 erzeugen >indem ich einen Interrupt mit der
>doppelten frequenz von 2,73kHz erzeuge und darin einen Ausgang toggle.

Für so etwas nimmt man CTC, nicht PWM.

MfG Spess

von Michael M. (Gast)


Lesenswert?

Floh schrieb:
> Schau mal noch Software-PWM.
falsche adresse!

Max Kleinmann schrieb:
> Die Ausgangssignale sollen ein Duty Cycle von 50% haben und gleichzeitig
> an drei Ausgängen des Controllers verfügbar sein.
was soll das gleichzeitig hier heißen?

> Habe gesehen dass Timer0 am Tiny25 zwei PWM Channels hat. Leider ist mir
> beim lesen des Datenblattes nicht ganz klar geworden ob diese
> gleichzeitig nutzbar sind oder nur nacheinander. Weil wenn mand iese
geht gleichzeitig, denn es werden unterschiedliche interrupts 
angesprungen.
> gleichzeitig nutzen könnte dann kann ich ja eine PWM mit Timer1 erzeugen
> indem ich einen Interrupt mit der doppelten frequenz von 2,73kHz erzeuge
> und darin einen Ausgang toggle.
ganz genau so gehts.

von Michael M. (Gast)


Lesenswert?

spess53 schrieb:
> Für so etwas nimmt man CTC, nicht PWM.
geht doch wunderbar mit toggle pin als compare output.
dann braucht man nicht mal eine ISR.

von Floh (Gast)


Lesenswert?

spess53 schrieb:
> Und was hat das hier mit PWM zu tun?

Festfrequenz mit 50%-Duty -> PWM :-) (ich weis, da is die Wortwahl n 
bisschen komisch)

Du brauchst also 3 Kanäle, die unterschiedliche Frequenzen ausgeben, bei 
den hier genannten Frequenzen kann man das gut über Software 
realisieren.

z.B.
Timer:
  frq1 erhöhen
  falls frq1 >= zählwert1
    pin toggeln und frq1 = 0

  frq2 erhöhen
  falls frq2 >= zählwert2
    pin toggeln und frq2 = 0

  frq3 erhöhen
  falls frq3 >= zählwert3
    pin toggeln und frq3 = 0
Timer_ende

Hier könnte man den Timer dann so einstellen, das die Zeit dem größten 
gemeinsamen Teiler entspricht.

von Michael M. (Gast)


Lesenswert?

Floh schrieb:
> Festfrequenz mit 50%-Duty -> PWM
ja aber doch genau nicht! wo wird denn da eine weite moduliert?

> z.B.
> Timer:
[...]
schon eher. was aber trotzdem keine pwm ist.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.