cyfxuartlpregmode, cyfxuartlpdmamode, and cyfxusbuart serial port problem

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

 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.

   

Regards,

   

Dave 
 

0 Likes
2 Replies
Anonymous
Not applicable

Hi,

   

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.

   

Regards,

   

- Madhu Sudhan

0 Likes

Yes.

With settings CY_U3P_IO_MATRIX_LPP_DEFAULT  and 9600 is good work.

0 Likes