I can't receive a letter using UART
ISR(USART__RXC_vect)
{  
  char ReceivedByte;
  ReceivedByte = UDR0; 
// Fetch the received byte value into the variable "ByteReceived"
}



USART__RXC_vect is not the name of the interrupt vector, USART_RX_vect is.

If you don't get the name right there is no compiler warning, however the interrupt routine is not called.




UCSR0A |= (1 &lt;&lt; RXCIE0);



That line is wrong. RXCIE0 is in UCSR0B not UCSR0A. If you set the bit in the correct register you will get an interrupt.