On Thu, Apr 08, 2004 at 04:43:10PM +1000, David Duffy wrote: > Herbert Graf wrote: > > >I'm working on a project that requires converting unidirectional > >data from one baudrate to another. If anyone has ideas on an elegant > >and inexpensive way to do this, it would be appreciated. > > > >The converter is for a DMX transmitter. DMX is the standard protocol > >used in the entertainment industry for controlling lighting equipment > >such as dimmers, colour changers, fog machines, etc. It is electrically > >RS-485, and the data is 250kbps. > > > >The crux is that I am interfacing it with an embedded PC using the > >RS-232 port which runs at 115.2kbps. Of course there is a bottleneck, > >but it's ok because the data being sent is generated less often then > >what would be needed to max out the DMX output. > > > >Here are my current thoughts on a solution: > > > >- 2 PICs connected together with either parallel or I2C > >- a PIC with 2 UARTs (but the only ones are 64TQFP, not nice to solder) > >- a PIC controlling a 16550 UART > > > > > > It's not as simple as that. You have to generate the DMX other timing > as well. eg. Break, MAB, etc. The DMX stream is not just a series of > bytes @ 250KB. The timing is what syncs the receivers to the stream. > David... I have made a successful transmitter with a PIC that generates its own data (from potentiometers) using the built-in USART. I simply turn off the USART to generate the break, although some UARTs are apparently capable of making breaks in hardware. A DMX protocol analyser though thinks that my method is 100% fine with respect to timing. Andrew -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.