- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm having a problem receiving 8-bit byte data using a SCB 3.0 configured as a UART. I can transmit full 8-bit byte data without issue (0x00 - 0xFF). When receiving any byte greater than 0x7F, 0x3F is returned.
I'm not sure if the problem is a hardware issue, or a problem with the code that maintains RX FIFO and the RX software buffer. I have not modified any of the SCB code that is generated by Creator 3.3
I have verified that the incorrect value is being saved to the RX software buffer. SCB_UartGetByte(), SCB_UartGetChar(), and SCB_SpiUartReadRxData all return the same incorrect value.
Configuration:
CY8CKIT-043 PSoC 4200M
SCB 3.0 - UART
Mode: Standard
Direction: TX + RX
Baud rate: 115200
Data Bits: 8 bits
Parity: None
Stop Bits: 1
Oversampling: 16
RX Buffer size: 64
TX Buffer size: 64
Interrupt: Internal
I'm new to PSoC and Creator, but I have worked with serial ports in embedded systems for years and haven't come across a problem like this before. Has anybody in the PSoC community seen this problem or have any suggestions?
Thanks,
Gary Beam
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Easiest check you can make would be to shortcut Tx and Rx lines to see if it is a PSoC SCB UART problem. Can you post your complete project, so that we all can have a look at all of your settings? To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the suggestion Bob. I hooked up a loopback and verified that the PSoC 4 SCB UART, and all code is working properly! I'm going to dig out a logic analyzer and verify that the KitProg USB to TTL Serial is working properly, and also verify that an app i'm running on a PC is properly transmitting 8-bit data. I know the app is properly receiving data from the PSoC, but i'm not 100% sure it's transmitting properly.
Gary