Attiny841, PWM Phase Correct auf PA1

Gast #4122030
Lesenswert?
• ▲
▼
Moin,

versuche seit ein paar Stunden einen 16 bit Phase Correct PWM auf PA1 
eines Attiny841 auszugeben. Auf dem Port passiert leider nichts, und ich 
steh gerade auf dem Schlauch wo ich den (die) Fehler gemacht habe. 
Vermute das was mit dem Ansatz ICR1 als Top Counter nicht stimmt. Habt 
Ihr eine Idee wo ich ansetzen muss?

Danke!
1
main()
2
{
3
        DDRA |= (1<<PA1);
4

5
        TOCPMSA0 |= (1<<TOCC0S0);
6
        TOCPMCOE = (1<<TOCC0OE);
7

8
        ICR1 = 1000;
9

10
        TCCR0A = (1<<COM1B1) | (1<<COM1B0);             
11
        //Mode: Mode 10, WGMn[3:0]=1010, PWM Phase Correct, Top=ICR1
12
        TCCR0A = (1<<WGM11);
13
        TCCR0B = (1<<WGM13);
14

15
        while(1) {}
16
}
Gast #4123208
Lesenswert?
• ▲
▼
Danke, ist korrigiert! TOCPMSA0 sollte auch auf TOCC0S1 stehen, wenn ich 
Tabelle 12-7 richtig verstehe, hat aber leider beides nichts gebracht. 
Bin etwas ratlos, ich vermute das ich TOCPMSA0 immer noch falsch gesetzt 
habe für Ausgabe auf TOCC0/PA.
Gast #4123239
Lesenswert?
• ▲
▼
Wellenschmied schrieb:
1
> main()
2
> {
3
>         DDRA |= (1<<PA1);
4
> 
5
>         TOCPMSA0 |= (1<<TOCC0S0);
6
>         TOCPMCOE = (1<<TOCC1OE);
7
> 
8
>         ICR1 = 1000;
9
> 
10
>         TCCR1A = (1<<COM1B1) | (1<<COM1B0);
11
>         //Mode: Mode 10, WGMn[3:0]=1010, PWM Phase Correct, Top=ICR1
12
>         TCCR1A = (1<<WGM11);
13
>         TCCR1B = (1<<WGM13);
14
> 
15
>         while(1) {}
16
> }

Wenn du Timer 1 verwenden willst, solltest du auch die passenden 
Register beschrieben - nicht die des Timer0.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.