moin moin,

>>EA = 0; //Interrupts global freigeben
>> ES0 = 1; //UART0 interrupt freigeben

falsch, EA muß auch 1 sein, bei 0 wird gesperrt!

>>In main warte ich in der whileschleife auf einen Interrupt.
>>Wenn der kommt gehe ich zu UART_ISR

was soll denn das werden? Entweder Polling von RI und dann Zeichen von UART abholen oder die ISR schiebt das Zeichen von der UART in den Rx-Buffer.

>>Beispiel für einen anderen (kleineren) Prozessor
da alle 8051ziger bei UART gleich arbeiten spielt der Prozessor keine Rolle.

mfg
Peter