OCR0A -Overflow mit Werten aus ADC?

Gast #2316127
Lesenswert?
• ▲
▼
Hallo an alle,

ich habe momentan ein kleines Problem, bei dem ich einfach nicht weiter 
weiß.

Ich möchte über ein Poti, das an den ADC eines Tiny 13 angeschlossen ist 
eine PWM steuern.
Dazu verwende ich eine Look-Up-Table aber wenn ich am Poti ca 3/4 der 
Referenzspannung des ADC anlege, dann "spring" der Wert von OCR0A 
anscheinend über und fängt bei 0 an....weiß nicht woran das liegt.
Hier ist der entsprechende Codeabschnitt:

volatile static uint8_t    PWM[64] =
        {20,21,22,23,24,24,25,27,28,29,30,31,32,34,35,37,
                     38,40,41,43,45,47,49,51,53,55,57,60,62,65,67,70,
                     73,76,79,82,86,89,93,97,101,105,109,114,118,123,128,134,
                     139,145,151,157,163,170,177,185,192,200,208,217,226,235,245,255};




  ISR(ADC_vect)
  {
    OCR0A = PWM[ADCH/4];
        }

Kann mir einer sagen wo mein Denkfehler liegt? :-(

Gruß Jan
#2316130
Lesenswert?
• ▲
▼
Jan schrieb:
> Kann mir einer sagen wo mein Denkfehler liegt? :-(

Du benutzt mehr RAM, als zur Verfügung steht. Der Tiny13 hat 64 Byte 
RAM, das Array ist 64 Byte groß. Selbst wenn du sonst weiter keine 
Variablen hast, ist das zu viel, denn es wird ja auch noch etwas RAM für 
den Stack benötigt.

Ein möglicher Ausweg ist es, die Look-Up-Tabelle ins Flash zu verbannen:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Programmspeicher_.28Flash.29
Gast #2316568
Lesenswert?
• ▲
▼
Ich hab an eine Tabelle gedacht, weil es so möglich ist mehreren 
ADC-Werten den gleichen PWM-Wert zu zu ordnen.
Wenn ich direkt den ADC- Wert in OCR0A schreibe dann befürchte ich dass 
die Glühbirne, die gedimmt werden soll in der Helligkeit zu sehr bzw zu 
schnell schwankt.


Gruß Jan

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.