При работе с LPC2114 столкнулся с такой проблемой.
Вся периферия работает прекрасно: UARTs, I2C, SPIs etc. НО...
...пока не начинаем работать с портом Р1.
Если этот порт настраивать на ввод(IODIR1=0;) - проблем нет.

Однако, как только в коде встречаются такие строчки:
IODIR1=0xffff0000; //Set All bits of P1 to output
IOSET1=0xffff0000; //Set All bits of P1 to 1
процессор перестает откликаться вообще.

Эта проблема возникает только на Р1. С Р0 проблем никаких.
По закону Мерфи именно порт1 в моем проекте должен работать на вывод
(все 16 линий).
Можно было бы грешить на выводы Р1.20 и Р1.26, однако на них уровень
во время ресета ненулевой, т.е. проц НЕ в режиме отладки. Кроме того,
если верить даташиту, у них внутренние пулл-апы. Подтяжка внешними
резисторами также результата не дала.

Второй день не могу понять: с лыжами проблема или все-таки я чего-то
недопонимаю :-)))

P.S. Привожу кусочек кода где возникает описанная проблема.
..................
// Off unused periphireals
PCONP=(PCONP_MASK ^ (PCONP_PCPWM0 | PCONP_PCSPI0 | PCONP_PCRTC | PCONP_PCSPI1 | PCONP_PCADC));

// Reset pin functions
PINSEL0=FSEL_GPIO_ALL;
PINSEL1=FSEL_GPIO_ALL;
PINSEL2&=0xfffffff3;
IOSET1=0xffff0000; //Set All bits of P1 to 1
IODIR1=0xffff0000; //Set All bits of P1 to output
IOSET1=0xffff0000; //Set All bits of P1 to 1

Uart_Open(UART0,UART_BAUD(9600), ULCR_LEN8|ULCR_STOP_1|ULCR_PAR_NO, UFCR_FIFO_ENABLE|UFCR_FIFO_TRIG8, UIER_RXDA_INT | UIER_THRE_INT );

Uart_SendBuffer(UART0,"Test",4);
....................

Если IODIR1=0, то в мы принимаем строку "Test"(все в порядке), а если
IODIR1=0xffff0000 UART молчит как партизан на допросе (как, впрочем и
вся остальная периферия :-((((( )