Psoc3 bit losses in Uart

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

cross mob
lock attach
Attachments are accessible only for community members.
CrVi_1101311
Level 3
Level 3
10 replies posted 5 replies posted 5 questions asked

Good afternoon.

I have a project with communications and sporadically a very strange thing happens.

I´ve captured a frame on the oscilloscope and I see that in the UART buffer (debugging) the less significant bit has been removed from each byte of the frame.

example: (oscilloscope)FF 03 FD E6 ...=> (uart buffer)FE 02 FC E5...

This gives me a communications error.

How could something like this happen?

Can I  have the uart bad configured to cause this type of error?

I have a feeling that if the firmware does more work (display in LCD) the error occurs more often.

Thanks and best regards.

0 Likes
3 Replies
Ekta_N
Moderator
Moderator
Moderator
750 replies posted First like given 250 solutions authored

Hello CrVi_1101311

Can you please provide more details regarding the your project? As per my understanding you are trying to receive data using UART.

The UART configuration in the attached document seems to be correct.

Could you please attach your project as would be easier to get a better understanding of this issue ?

Best Regards

Ekta

0 Likes
Thank you
Yes, I try to communicate (Modbus 485) with the Uart.
I have a 20ms timebased main tasks and when if I have a "free time"
(all tasks have not been completed 20ms)then, I manage the communication frames.
The Uart is by interruption (Tx and RX).
The firmware is about 65Kb.
What specific part would you like to review?
Best Regards.

					
				
			
			
				
			
			
				
			
			
			
			
			
			
		
0 Likes
Ekta_N
Moderator
Moderator
Moderator
750 replies posted First like given 250 solutions authored

Hello CrVi_1101311

Can you please provide the following information:

1. Try changing the oversampling to 16x and see if the least significant bit is still lost?

2. Can you please let us know if the issue is observed while sending or receiving data? As per our understanding it occurs while receiving data through UART.

3. If it is possible can you please share the part of the project that shows the error and remove other parts that may not be required to reproduce the issue at our end? Please share the oscilloscope trace.

The sampling of UART happens completely in hardware even though you might perform several other tasks in firmware you should not lose anything either you lose the entire byte due to firmware traffic losing the last bit alone should not be related to firmware.

Best Regards

Ekta

0 Likes