I have tried cyfxuartlpregmode, cyfxuartlpdmamode, and cyfxusbuart examples with the denebola development kit, and had no data received or transmitted via the RS232 UART. I have also tested the UART using the boot API and this works OK the hardware is fine, it would appear your example serial API is failing within your library.
I have since discovered that the example default CY_U3P_IO_MATRIX_LPP_UART_ONLY used in the function CyU3PDeviceConfigureIOMatrix() doesn't work, however using CY_U3P_IO_MATRIX_LPP_DEFAULT the example cyfxusbuart does function.
Using the debugger I found it possible to inspect the GCTL_IOMATRIX register (0xE0051088), and the default example setting (that doesn't work ) appeared to be configured correctly where S1CFG = 1 (Connected to GPIO + UART).
However when S1CFG = 4 (Connected to UART+SPI+I2S) the UART works. I am concerned that in this mode GPIO will no longer function, I have to test this soon.
Could you explain this functionality, and advise the expected behavior.
In the DeviceConfigureIOMatrix function, did you change anything else in the example project (like buswidth, spi usage etc.,), if so CY_U3P_IO_MATRIX_LPP_DEFAULT needs to be used instead of UART_ONLY.
If you are using the example as such, without any change, it is expected to work.
- Madhu Sudhan