Problem When SCI1C2_TE Enables

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

Problem When SCI1C2_TE Enables

Jump to solution
1,025 Views
Designer11
Contributor IV

Hi Everyone,

 

I'm using the QE32 dual SCI with a MAX3225ECTP for a project and I'm experiencing a really weird problem. The problem occurs whenever i initialize SCI1C2_TE = 1; and after a valid transmit,  the transmit pin, pin 6 toggles between 0VDC and +6VDC and pin 15 will toggle between -620mV and 0Vdc. During the toggling process, the transmit pins won't transmit a valid packet of data after the toggling disappear which takes several minutes. The problem DOES NOT happens when i enable SCI2C2_TE = 1;

 

The same hardware is been used in another project and everything works fine. I don't know why or what is causing the problem for this project.

 

Thanks,

Vu

Labels (1)
0 Kudos
1 Solution
824 Views
bigmac
Specialist III

Hello Vu,

So after cutting several traces on the PCB to isolate the core of the problem. It turns out the problem is caused by an EMI filter with ESD chip p/n AOZ8040DI. The transmit line, pin15 is connected to one channel of the EMI filter with ESD chip and after removing the signal from the chip the problem disappears. The chip shouldn't caused any problem, but I will fully investigate the problem at later time but for now it solves my problem.

It would seem that you are using an unsuitable protective device.  It appears that the device you are using is a uni-directional type, able to accept voltage excursions in the positive direction only  For RS232 operation, the output driver gives both positive and negative voltage excursions.  The protective device is therefore clamping the negative output to a level of about -0.7 volts.  This represents an overload condition, that will reduce of the V- voltage level from the charge pump, sufficiently so that the READY signal remains inactive.

The solution would be to use an alteratate bi-directional protective device that provides high-Z for both positive and negative voltage excursions.

Regards,

Mac

View solution in original post

0 Kudos
7 Replies
824 Views
admin
Specialist II

Hi Guys,

Thanks for all your suggestions. So after cutting several traces on the PCB to isolate the core of the problem. It turns out the problem is caused by an EMI filter with ESD chip p/n AOZ8040DI. The transmit line, pin15 is connected to one channel of the EMI filter with ESD chip and after removing the signal from the chip the problem disappears. The chip shouldn't caused any problem, but I will fully investigate the problem at later time but for now it solves my problem.

I have another question would it be possible to read the incoming data via the SCI1D and transmit that data via SCI2D without, first store the SCI1D data to an array then use SCI2D to send out the array. Because the length of the incoming data on SCI1D can be any where from 6bytes to 15bytes.

Thanks.

0 Kudos
825 Views
bigmac
Specialist III

Hello Vu,

So after cutting several traces on the PCB to isolate the core of the problem. It turns out the problem is caused by an EMI filter with ESD chip p/n AOZ8040DI. The transmit line, pin15 is connected to one channel of the EMI filter with ESD chip and after removing the signal from the chip the problem disappears. The chip shouldn't caused any problem, but I will fully investigate the problem at later time but for now it solves my problem.

It would seem that you are using an unsuitable protective device.  It appears that the device you are using is a uni-directional type, able to accept voltage excursions in the positive direction only  For RS232 operation, the output driver gives both positive and negative voltage excursions.  The protective device is therefore clamping the negative output to a level of about -0.7 volts.  This represents an overload condition, that will reduce of the V- voltage level from the charge pump, sufficiently so that the READY signal remains inactive.

The solution would be to use an alteratate bi-directional protective device that provides high-Z for both positive and negative voltage excursions.

Regards,

Mac

0 Kudos
824 Views
jmfs
Contributor I

If you are using SCI1 interrupt to receive the data you could start an SCI2 data transfer inside the interrupt by writing SCI1D to SCI2D ( SCI2D=SCI1D; ). But you need to be careful with timings, so that you don't overwrite SCI2D buffer and that you don't take to long to write data SC1D to SCI2D or SCI1D may be overwritten with a new byte. My guess is that If SCI1 baudrate isn't higher that SCI2 baudrate it could be done. It would be an echo of what you receive but to another SCI module.

0 Kudos
824 Views
bigmac
Specialist III

Hello Vu,

Have you checked whether the appropriate signals are being sent to the MAX3225 by the MCU?

You might also check whether you have steady voltage level greater than 5.5 volts at V+ (pin 20), and less than -5.5 volts at V- (pin 5).  The READY signal (pin 19) should be at a high logic state for communications to work.

One possibility is that an overload condition is being externally applied to the output pin.

Regards,

Mac

824 Views
jmfs
Contributor I

I'm reading MAX3225E datasheet and pin 6 isn't a transmit pin.

0 Kudos
824 Views
Designer11
Contributor IV

Miguel,

Pins 6 and 15 are RS232 transmitter output the part number is MAX3225E.

BR,

Vu

0 Kudos
824 Views
jmfs
Contributor I

You are correct, i was looking at a different package. sorry.

Do you have a default state of tx pin of SCI2 when SCI2 is disabled. maybe you need to set it as output so T1In pin of MAX3225E  has a defined voltage level.

0 Kudos