PSoC 4200M SCB 3.0 UART problem

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

cross mob
Anonymous
Not applicable

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

0 Likes
2 Replies