8051/serial port lockup

hi, we are seeing a problem which we suspect *may* be an intermittent serial port lockup on the 8051 series. We have an 8051-based device which quits communicating sometimes. Basically we suspect that another component is holding the serial port in the low (break) state for prolonged periods of time and are wondering if anyone knew of any problems with doing this. We are in the process of fixing the other component to not behave this way, but are looking to see if we can gain any confidence that this may actually fix the problem with the 8051-based device.

David

Reply to
David Lindauer
Loading thread data ...

You are not providing much information here. What does the 8051 talk or listen to? What kind of lockup do you experience? What or how can "the other component" keep which serial line in break state? Is the software waiting forever for the RI or the TI to become set? Is any data present on the serial line (oscilloscope)? What is the baudrate? Is the data continuous or packetized? When continuous, are there gaps in the stream to enable the receiving end to synchronize?

Meindert

Reply to
Meindert Sprang

I vaguely recall some relatively simple to work-around issue with interrupt-driven comms on 8051s, but no details. Try googling for code examples.

Best regards, Spehro Pefhany

--
"it's the network..."                          "The Journey is the reward"
speff@interlog.com             Info for manufacturers: http://www.trexon.com
Embedded software/hardware/analog  Info for designers:  http://www.speff.com
Reply to
Spehro Pefhany

You aren't providing enough informations. I just wanted to say that I have worked with many different 8051 series microcontrollers and had no problem whatsoever on the hardware level. And when routines are written correctly there should be no problems at all.

Anyways you might check errata sheet of your microcontroller to see if there are any known bugs in microcontroller.

Reply to
Mickey

Lockup and async ports is something of a contradiction in terms.

If you mean 'loosing the odd character', then maybe : A break will cause a INT, and then it's up to the SW to decide -> [break, not char]. Most newest C51 UARTS have flags that can help with this (FE). Check what your SW actually does, with Break's.

-jg

Reply to
Jim Granville

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.