Цитата(_3m @ Jul 29 2015, 15:49)

В LPC17XX для rs485 пригоден только uart1, в других нет управления направлением rs485 и не предусмотрено прерывание по флагу статуса Transmitter Empty, без этого прерывания в многозадачной системе не сделать программное управление трансивером rs485.
Странно.. У нас кучка устройств на LPC1768/LPC1778, во всех 1-2 RS-485, везде FIFO включен, ни один не находится на UART1, везде используется операционка, среди прочих протоколов используется и Modbus. Проблем не замечал.
Управление направлением передачи внешнего драйвера - GPIO. Обнаружение конца передачи - прерывание buffer empty, затем - поллинг в прерываниях сис.таймера с ожиданием shifter empty (при желании можно и точно рассчитать стоповый бит, взведя таймер по buffer empty, но оно имхо - не нужна такая точность).
Цитата(_3m @ Jul 29 2015, 15:49)

Также я не представляю как в этих уарт ловить таймауты модбас-рту не отключая фифо.
Точно так же как и без FIFO - оно не влияет никак на таймауты.
Цитата(_3m @ Jul 29 2015, 15:49)

Кроме того в lpc17 boot loader работает с уарт а мне обязательно нужна загрузка прошивки по усб.
PL2303/CP2102/FT232 ?
Цитата(Kabdim @ Jul 29 2015, 14:18)

Но NXP в новых чипах держит только 1 уарт с полным фукнционалом, а остальные обрезки.
Интересно - в чём урезанность остальных UART???? CTS/RTS нету? Так оно для RS-485 и не нужно.
Если так подходить, то STM32 вообще UART полных не содержит - ни в одном нету FIFO

PS: Любой из LPC17xx удовлетворяет всем Вашим требованиям. Ну с прерыванием опустошения сдвигового регистра там конечно туго, но можно обойтись и без него.