- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes.
With settings CY_U3P_IO_MATRIX_LPP_DEFAULT and 9600 is good work.