а как же
VICVectAddr = 0; /* Acknowledge Interrupt */
в прерывании?
непонятно, что хотите впрерывании делать... я бы как минимум эхо сделал для проверки...
и вот пример инициализации от Keil UART1 для LPC23xx
Код
PINSEL0 &= ~0xC0000000;
PINSEL0 |= 0x40000000; /* Enable TxD1 pin */
PINSEL1 &= ~0x00000003;
PINSEL1 |= 0x00000001; /* Enable RxD1 pin */
U1LCR = 0x83; /* 8 bits, no Parity, 1 Stop bit */
U1DLL = 3; /* 115200 Baud Rate @ 12MHz PCLK Clock */
U1FDR = 0x67; /* Fractional Divider */
U1LCR = 0x03; /* DLAB = 0 */
U1IER = 0x03; /* Enable RDA and THRE interrupts */
VICVectAddr7 = (U32)int_serial; /* Set Interrupt Vector */
VICVectCntl7 = 7; /* use it for UART1 Interrupt */
VICIntEnable = (1 << 7); /* Enable Interrupt */
у Вас инициализация, честно говоря, странновата