Forum: Mikrocontroller und Digitale Elektronik Atmega8 ADC UART Problem


von Carsten P. (carstenp)


Lesenswert?

Hallo zusammen,

Hab heute versucht zu meinem UART nur meine ADCs zu initialisieren: 
Plötzlich funktionierte die UART Schnittstelle nich mehr.
Ich versteh nun den Fehler nich.

Sobald ich in RFS0 ne 1 reinschreibe, kommt beim senden vom µC an den PC 
nur noch Müll raus... Setz ich RFS0 auf 0 geht wieder alles einwandfrei.
Hat da jemand ne Idee? Was hat denn die externe Referenz über 
Kondensator oder was haben allgemein die ADCs mit dem UART zu tun, dass 
diese sich beeinflusen. Hab leider bis jetzt keinen Zusammenhang 
gefunden... :(
Ah nochwas: Benutze momentan das STK500 Board.

Würd mich über jede Hilfe freuen!

Cheers Carsten

von Johannes M. (johnny-m)


Lesenswert?

Code?

Abgesehen davon hat der ATMega8 nur einen ADC und nicht mehrere...

von Carsten P. (carstenp)


Lesenswert?

Stimmt, mit "ADCs" sind bei mir die Känale gemeint. ;)
1
#ifndef F_CPU
2
#define F_CPU 8000000UL
3
#endif
4
5
/* 9600 baud */
6
#define UART_BAUD_RATE      9600
7
8
void ADC_init()
9
{
10
 // AD initialisieren
11
12
 ADMUX  |= (1<<REFS0);
13
 ADCSRA |= (1<<ADEN)|(1<<ADPS2);
14
}
15
16
int main(void)
17
{  
18
  ports_init();
19
  ADC_init();
20
  uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,F_CPU) ); 
21
    sei();
22
    uart_puts("ATmega8");
23
}

Die UART Funktionen sind von Fleury, nachdem ich dachte meine würden 
Fehler produzieren, aber da passiert dasselbe... Solange REFS0 den Wert 
0 hat geht der UART...

von Johannes M. (johnny-m)


Lesenswert?

...und was ist mit ports_init? Ohne das vollständige Programm kann man 
alles Mögliche vermuten!

von Carsten P. (carstenp)


Lesenswert?

ports init(); kann ich auch auskommentieren und es macht dasselbe. bei 0 
gehts und bei 1 nich.
Uart geht bis ich ADC_init(); aufrufe!

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.