CY8CPLC20 low voltage evaluation kit (CY3275) : data takes too long to be transmitted

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

cross mob
Anonymous
Not applicable

Hi,

   

I rencently began some tests on 2 CY3275 devkits communicating together (low voltage 12/24V PLC devkits).

   

I displayed the output signal (FSK) on an oscilloscope and figured out that the packet isn't transmitted within the expected time.

   

I modified the example programs in order to send a full 39B packet (1B (0xAB) + 6B header + 31B data + 1B CRC). So it should take approximately 130ms @ 2400bps to be transmitted.

   

The oscilloscope shows me that the packet takes 200ms to be transmitted.

0 Likes
1 Solution
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Take my comments with a grain of salt as I have never used the

   

kit before, but in the protocol firmware is there a variable keeping track

   

of packet retrys due to power line noise ? That may be an indicator

   

of performance.

   

 

   

You could always put a scope on infinte persistance and look at the

   

power line to get a handle on pk-pk noise over time.

   

 

   

Regards, Dana.

View solution in original post

0 Likes
8 Replies
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Take my comments with a grain of salt as I have never used the

   

kit before, but in the protocol firmware is there a variable keeping track

   

of packet retrys due to power line noise ? That may be an indicator

   

of performance.

   

 

   

You could always put a scope on infinte persistance and look at the

   

power line to get a handle on pk-pk noise over time.

   

 

   

Regards, Dana.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

I always calculate a serial transmition with 12 bits / byte since there are start- and stop-bits and a parity as well. When I take your 38 bytes @2400 baud I get 195ms which is rather close to your observed 200ms.

   

 

   

Bob

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Bob, I must be missing something.

   

 

   

8 bits/byte + 1 stop + 1 start + 1 parity = 11 bits x 38 bytes x 1 / 2400 baud = 174 mS

   

 

   

Regards, Dana.

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Ah, I missed 2 stop bits vs 1.

   

 

   

Senility is closing in rapidly.

   

 

   

Regards, Dana.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

It is not named senility, it is named dyscalculia and it may be healed by having 27 pirimes and a qube a day.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

Thank you for your replies !

   

I didn't know there was start/stop/parity bits for each byte transmitted. Can it configured or bypassed ?

   

Thank you

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Startbits are essential and cannot be avoided (maybe changed in length), stopbit can be ommitted (usually). Parity may be ommitted, but since the protocol is standardized you should stick to the default. Check datasheet of usermodule and PSoC.

   

 

   

Bob

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Odd, I cannot seem to find a EIA spec on serial UART, 16550 basis,

   

but doesn't the receiver need  at least 1 stop bit to avoid a framing error ?

   

 

   

www.freebsd.org/doc/en/articles/serial-uart/

   

 

   

en.wikipedia.org/wiki/Universal_asynchronous_receiver/transmitter

   

 

   

Regards, Dana.

0 Likes