Se você estiver usando o processador NIOS® II e for capaz de enviar caracteres embora o JTAG UART não possa receber nenhum, a razão pode ser que o driver não esteja usando interrupções. Se você estiver usando a opção de projeto para usar os drivers para reduzir a memória, isso permitirá a configuração enable_reduced_device_drivers. Isso significa que as interrupções não serão habilitadas para determinados drivers e você precisará usar o modo de votação.
A partir do makefile BSP (public.mk) dentro do projeto NIOS® II:
Certos drivers são compilados com funcionalidade reduzida para reduzir a pegada de código. Nem todos os drivers observam esta configuração. Os drivers altera_avalon_uart e altera_avalon_jtag_uart alternam de operação orientada por interrupção para operação pesquisada.