FRDM-K64F: data loss in serial transmission

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

FRDM-K64F: data loss in serial transmission

674 Views
robertofurlani
Contributor I

Hi all,

   I'm new in this community, nice to meet you.

I write here because I've a issue on FRDM-K64F when I'm using AS1:Serial_LDD provided by Processor Expert.

It appears like loss of some 0x00 bytes.

Example:

If I transmit 0x86 0x01 0x00 0x00 0x23, after calling AS1_ReceiveBlock(MySerialPtr, InpData, 5) function the buffer InpData is filled in this manner:

InpData[0] = 0x86 ;InpData[1] = 0x01; InpData[2] =0x23; InpData[3] and InpData[4] not refreshed.

The issue is present only if I send the entire packet in one time. If I transmit the bytes one by one, the rx works properly.

How can I solve this problem?

Thanks in advance,

   Roberto

Labels (1)
0 Kudos
1 Reply

354 Views
marek_neuzil
NXP Employee
NXP Employee

Hello,

I have checked the AsynchroSerial driver code but there is not any filtering of the received characters. It seems that the issue can be cause by inaccurate clock source frequency that is used by your UART transmitter and receiver, e.g. any/both of these devices use an internal oscillator as clock source that is not precisely trimmed (for example default FEI mode of the MCG on the MK64FN1M0 that is available on the FRDM-K64F target board). In this case the zero character can be considered as a break character and it is not received. You can also verify the received signal by using digital oscilloscope on the RxD pin.

Best Regards,

Marek Neuzil