I am using Infineon XC866 and Keil uvision. I selected the LX51 Linker in the project setup. The UART is init through
/// Initialization of module 'UART (Serial Interface)' UART_vInit();
// USER CODE BEGIN (MAIN_General,10) void message( char *pucMessage ) { // while the character is not 0 while (*pucMessage) { SBUF = *pucMessage++; while (TI == 0) {;} TI = 0; } return; } // USER CODE END
You should also rearrange your message() function as follows: while (*pucMessage) { while (TI == 0) {;} TI = 0; SBUF = *pucMessage++; } otherwise it will prevent putchar() from working.