I'm using a 48-pin LPC11U68, making use of USART0. I'm having trouble getting *any* value for the CTS input. I'm using Port 0, pin 7 in the IOCON set up.
I've tried enabling auto-cts, as well as setting up modem status interrupts, with the CTS change-of-state interrupt enabled too.
To date I can see nothing that correlates to the CTS input. When I read the CTS bit in the modem status register, it never reflects the current state of the CTS input, nor does the change-of-state ever move.
Chip_IOCON_PinMuxSet(LPC_IOCON, 0, 7, (IOCON_FUNC1 | IOCON_MODE_PULLDOWN | IOCON_DIGMODE_EN));
Chip_UART0_SetModemControl(LPC_USART0, UART0_MCR_AUTO_CTS_EN); <-- confirmed in MCR
Chip_UART0_IntEnable(LPC_USART0, (UART0_IER_RBRINT | UART0_IER_RLSINT | UART0_IER_MSINT | UART0_IER_CTSINT)); <-- Confirmed in register
In my ISR, I never see a change of CTS state, even though the input definitely has a changing input.
Auto-CTS is not working, in that TX continues regardless of the CTS input from the receiving device.
I saw another post about this very issue, and no one responded. Is this a known problem with this port, or is there some secret sequence to configure it for correct operation?