ts-7000
[Top] [All Lists]

Re: [ts-7000] Re: TS-7550 RS-485 Tx Enable

To:
Subject: Re: [ts-7000] Re: TS-7550 RS-485 Tx Enable
From: "Gregory W. Maglathlin" <>
Date: Thu, 10 Nov 2011 11:05:43 -0500


Martin,
Thanks a lot for the reply.
I saw that the receivers are always enabled.  My problem was that when I was testing the interface, I just left pins 1 and 6 open and transmitted data.  I assumed that if I had the TX enable set that I would see the data reflected and that if I had the TX enable unset that I would not see the data.  I saw the data in either case.  This led me to believe that the transmit enable was always set, regardless of the setting of DIO 27.  It turns out that the XUART code automatically controls the transmitter enable, the user has no control over it via DIO 27.  The XUART turns on the enable (via DIO 27) on while is sends characters and turns it off otherwise.  My experience has been that I had to control this operation myself. The implementation while different, looks like it will work for my application.
Regards,
Greg


On 11/9/2011 2:05 PM, naturalwatt wrote:
 



--- In , "gmaglathlin" m("...","maglathlin");"><> wrote:
>
> I am endeavoring to use the RS-485 driver on a TS-752 driven by a TS-7550 board. I successfully open /dev/pts/1 and can write data to the port which is reflected back to me, exactly as it should on a two wire RS-485 interface with the transmitter enabled. My problem is I can not disable the transmitter (ie place it in the high impedance state). Using setdiopin 27,0 or setdiopin 27,1 makes no difference. The data is reflected (ie the transmitter is enabled) in either case. This is the dio that is supposed to control the tx enable of the driver. I have tried this with versions 4, 5 and 6 of the FPGA bitstream. Anyone had this experience or ideas or know the obvious thing I am missing.
> Thanks in advance,
> Greg
>

I think you mean you can't disable the receiver, if you always get what you send. I had a long mail from Kris at technologic.

We used to use external RS232/485 converters, and with those you don't get what you send as the receiver is disabled while you send. On the Ts752, and on our own board using very similar circuitry, the receiver is not disabled. Look at the schematic; you will see that the RXEN is tied low.

Kris said this is deliberate so that you can check that what you sent was actually sent. If for example there is a low impedance or short on the D+/D- lines, you can detect this as won't receive what you send. You can implement collision detection this way, although it's going to get complicated in real life.

Although it is possible to work around this in software, it's a real nuisance for us as our programs that talk to external devices are sometimes connected using RS232 and sometimes with RS485. Now the software has to cope with the possibility that sometimes it receives its output and sometimes not.

The sensible way to deal with this is an echo-test routine as the start of the program - send an invalid message, see if you receive it, set a flag accordingly.

By the way, the ISO485 board (for the TS2750 series) is really horrible as you have to set RTS low otherwise you will never receive anything.

Martin




__._,_.___


Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: =Email Delivery: Digest | m("yahoogroups.com?subject","ts-7000-fullfeatured");=Change Delivery Format: Fully Featured">Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | =Unsubscribe

__,_._,___
<Prev in Thread] Current Thread [Next in Thread>
Admin

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU