Forum: Mikrocontroller und Digitale Elektronik ATTiny26-16PU, Internal Clock, PWM funktioniert nicht


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Stefan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin leider komplett neu im Bereich des AVR und sitze schon eine 
Weile vor einem Problem: Ich bekomme die PWM beim ATTiny26 nicht zum 
Laufen.

Was funktioniert:
Direktes Ein- & Ausschalten einer LED am Port PB3 funktioniert.
PWM funktioniert nicht - Die LED an PB3 bleibt immer ein (Ausgang auf 
LOW)

Als Clock verwende ich den internen, also ohne Quarz.

Anbei meine Initialisierungsroutine:
// data direction Port A (0..IN/1..OUT)
DDRA = 0x00 | (1<<DDA3) | (1<<DDA4) | (1<<DDA5) | (1<<DDA6) | (1<<DDA7);
  
// data direction Port B (0..IN/1..OUT)
DDRB = 0x00 | (1<<DDB3) | (1<<DDB4) | (1<<DDB6);
  
// ADC activation - ENABLE | PRESCALER8
ADCSR = (1<<ADEN) | (1<<ADPS1) | (1<<ADPS0);
            
// PWM config
TCCR1B = (1 << CS10);  // start up timer1, no prescaler
TCCR1A = ((1 << COM1A0) | (1 << PWM1A));
OCR1B = 128;

Evtl. kann mir ja wer weiterhelfen.

Danke!!

Stefan

von spess53 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hi

>TCCR1A = ((1 << COM1A0) | (1 << PWM1A));

/OC1A und OC1A liegen aber auf PB0 und PB1. Und die sind bei dir 
Eingang.

MfG Spess

von Max D. (max_d)


Bewertung
0 lesenswert
nicht lesenswert
PB3 gehört zu OC1B du scchreibst aber (1 << COM1A0)

von Stefan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Spess, hallo Max,

vielen Dank für die Antworten.
Hab das ganze jetzt auf

TCCR1A = ((1 << COM1B0) | (1 << PWM1A));

geändert. Es mag trotzdem nicht - Die LED bleibt jetzt aus (high)

von Stefan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Korrigiere:

Auf

  TCCR1A = ((1 << COM1B0) | (1 << PWM1B));

geändert.

von Max D. (max_d)


Bewertung
0 lesenswert
nicht lesenswert
OCR1C = x  mit 0<x<255

von Stefan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke!!
Stef

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.