Sida 1 av 1

Skummt problem med atmega1280 och usart

Postat: 18 juli 2009, 18:47:51
av eAk
Problemet jag har är att den skriver ut text strängen i oändlighet.
den ska bara skrivas ut en gång. trycker jag på s så överför den datan och slutar repetera intro texten i oändlighet.

Den borde ju bara skriva en gång och sedan fastna i while loopen och vänta på interrupt

Någon som har ett svar ?

Kod: Markera allt

int main(void)
{
	init_uart();
	sei();
	stdout = &mystdout0; //Required for printf init
	
	printf("\nValkommen. Jag ar redo for kommando\ns hamtar ut en bild fran cam.\n");
	
	while(1)
	{
	}
	
}

Re: Skummt problem med atmega1280 och usart

Postat: 18 juli 2009, 18:59:25
av sodjan
Vilket "interrupt" ?

Re: Skummt problem med atmega1280 och usart

Postat: 18 juli 2009, 19:03:39
av eAk
USART0_RX_vect

Re: Skummt problem med atmega1280 och usart

Postat: 18 juli 2009, 19:07:10
av eAk
att tillägga är att tar jag bort while loopen så skriver den bara texten en gång.
men då väntar den ju aldrig på interrupt

Re: Skummt problem med atmega1280 och usart

Postat: 18 juli 2009, 19:11:44
av sodjan
Är det där verkligen hela koden ??
Var finns "USART0_RX_vect" ?
Var ställs interrupten in ?
Var är koden som interruptet kör ?
Hur är processorn konfigurerad ?
Hur är WDT inställt ?

Skit samma förreesten, jag vill inte leka 20 frågor...

Re: Skummt problem med atmega1280 och usart

Postat: 18 juli 2009, 19:20:37
av eAk
fixxat

Re: Skummt problem med atmega1280 och usart

Postat: 20 juli 2009, 17:25:25
av eAk
Det var TXinterrupt som jävlades.


If an unexpected interrupt occurs (interrupt is enabled and no handler is installed, which usually indicates a bug), then the default action is to reset the device by jumping to the reset vector. You can override this by supplying a function named BADISR_vect which should be defined with ISR() as such. (The name BADISR_vect is actually an alias for __vector_default. The latter must be used inside assembly code in case <avr/interrupt.h> is not included.)

Re: Skummt problem med atmega1280 och usart

Postat: 20 juli 2009, 19:41:27
av vfr
Jag tänkte nästan skrivit tidigare att det verkar som att den gör reset och därmed börjar om igen. Men det kom något annat emellan...

Var inte vektorn korrekt definierad?