Witam!
Przeszukałem chyba całe forum i nie znalazłem rozwiązania na mój problem.
Próbuje uruchomić UART pomiędzy prockiem a komputerem. Działa mi wysyłania, nie działa mi odbiór.
Co trzeba jeszcze ustawić lub co jest źle ?
Przeszukałem chyba całe forum i nie znalazłem rozwiązania na mój problem.
Próbuje uruchomić UART pomiędzy prockiem a komputerem. Działa mi wysyłania, nie działa mi odbiór.
SIGNAL (SIG_UART0_RECV) // USART RX interrupt
{
while (UCSR0A & 0x80)
c = UDR0;
}
void UART_Init( unsigned int ubrr)
{
UBRR0H =0; //(unsigned char)(ubrr>>8);
UBRR0L =11; // (unsigned char)ubrr;
UCSR0B = (1<<RXEN0)|(1<<TXEN0)|(1 << RXCIE0); // Enable receiver and transmitter
UCSR0C = (1<<UCSZ01) | (1<<UCSZ00); // Set frame format: 8data, 1stop bit
}
void UART_Transmit( unsigned char data )
{
while ( !( UCSR0A & (1<<UDRE0)) ); // Wait for empty transmit buffer
UDR0 = data;
}
int main(void)
{
DDRE&=~(1<<0); // Rx
DDRE|=(1<<1); // Tx
SREG|= (1<<SREG_I);
UCSR0B|= (1<<RXCIE0);
UART_Init ( MYUBRR );
while(1)
{
}
}Co trzeba jeszcze ustawić lub co jest źle ?