Witam
Wiem ze temat byl walkowany miliony razy
Miliony kombinacji tez juz probowalem ale nadal nie dziala
Mianowicie mam problem z przerwaniem podczas odboiru danych
Wysylanie danych mi dziala chociaz tez nie do konca dobrze
Przy 4800 wszystko dochodzi bez problemu a przy 9600 juz mam krzaki
Wiekszym problemem jest to ze przerwanie nie jest wywolywane
Funkcja flash_led() - zapalenie na 1s diody na porcie A
Wiem ze temat byl walkowany miliony razy
Miliony kombinacji tez juz probowalem ale nadal nie dziala
Mianowicie mam problem z przerwaniem podczas odboiru danych
.......
#define F_CPU 1000000L
#define UART_BAUD_RATE 4800
#define MYUBRR F_CPU/16/UART_BAUD_RATE-1
.......
ISR(SIG_USART0_RECV)
{
flash_led();
}
........
void USART0_Init( unsigned int ubrr )
{
/* Set baud rate */
UBRR0H = (unsigned char)(ubrr>>8);
UBRR0L = (unsigned char)ubrr;
/* Enable receiver and transmitter */
UCSR0B = (1 << RXCIE0) | (1 << RXEN0) | (1 << TXEN0);
/* Set frame format: 8data, 2stop bit */
UCSR0C = (1<<URSEL0)|(1<<USBS0)|(3<<UCSZ00);
}
........
Wysylanie danych mi dziala chociaz tez nie do konca dobrze
Przy 4800 wszystko dochodzi bez problemu a przy 9600 juz mam krzaki
Wiekszym problemem jest to ze przerwanie nie jest wywolywane
Funkcja flash_led() - zapalenie na 1s diody na porcie A