Tiny13 ADC freerunning

OP Persönliche Seite #1647668
Lesenswert?
• ▲
▼
Hallo,
im Augenblick versuche ich mich gerade in den ADC eines Tiny13 
einzuarbeiten.
Ich habe da mal ein kleines Programm geschrieben, das eine free running 
ADC macht, und den Wert als Comparewert für einen CTC-Timer benutzt, der 
dann eine LED blinkend steuert.
Als Hardware: Poti an PB3 und LED an PB0.
Der Vergleichswert für die ADC soll VCC sein.
Leider will der Code nicht so richtig.
1
#include <avr/io.h>        
2
  
3
#include <avr/interrupt.h>
4
//Master-freq = 128kHz
5

6
ISR(TIM0_COMPA_vect){
7
PORTB = PORTB ^ (1<<PB0); //Togglen des Pins
8
OCR0A = ADCH;//Wert vom ADC übernehmen
9
}
10

11
void init(){
12
TCCR0A = (1<<WGM01); //Count to Compare Modus
13
TCCR0B =  (1<<CS02); //Teiler 1024 //Bleiben noch 125Hz
14
OCR0A = 100;//Zweiter Teiler 25 //Bleiben noch 5Hz
15
TIMSK0 = (1<<OCIE0A);//Interrupt setzen
16
ADCSRA = (1<<ADEN) | (1<<ADSC) |(1<<ADATE); //ADC einschalten, aktivieren und auf Free-Running schalten
17
ADMUX = (1<<MUX0) | (1<<MUX1);//ADMUX auf PORTB 3
18
DDRB = (1<<PB0);//PORTB0 als Ausgang
19
sei();//Interrupts einschalten
20
}
21

22
int main(void){
23
  init();
24
  while(1){
25
  }
26
}
Die LED geht an und bleibt an, egal, wie ich am Poti drehe.
Kann mir jemand sagen, wo ich den Fehler gemacht habe?
Mit freundlichen Grüßen,
Valentin Buck

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.