DMX Sender (have I use one or two PICs?)
Harold M Hallikainen email (remove spam text)
On Wed, 27 Oct 1999 22:12:56 -0200 Edson Brusque <FLYNET.COM.BR> brusque
> According to page 109 of the PIC16F87X literature (DS30292A),
> with FOSC=20MHz, BRGH=1 and SPBRG=10, the USART works at 250Kbaud with
Ahh! Yes, when I designed this code, BRGH didn't work! So I went with
16 MHz. They've fixed that now!
> I thought that stoping telling the USART to output a byte would
> maintain it in idle mode, so, with it's output HI (the same as a
> Isn't it?
A BREAK is with the USART output LOW. This all comes about from Morse's
telegraph where there was a continuous loop of all the stations. When
there was loop current (USART high, EIA232 at -12V), the original inking
telegraph would MARK the paper while an open circuit (no loop current)
would leave a SPACE on the paper. The telegrapher could put down dots
and dashes through the proper combination of MARK and SPACE.
Since all stations were in SERIES, the idle condition was MARK. Each
station would close the shorting switch on their key. They'd break the
circuit when they needed to send a message (closing it when they pushed
down on the key).
When we moved to mechanical Teletypes, the idle condition remained the
MARK condition of having current in the loop (typically 60 or 20 mA).
When the start bit (space) came along, a clutch would be released
(actually, a catch would allow the slipping clutch to stop slipping).
This was followed by the data bits (originally 5 data bits for the Baudot
code) and then the MARK stop bit (originally 1.5 bits long though the
rotation of the receive shaft only required 1 stop bit... the extra
transmitted 0.5 bit of mark allowed for speed variation between
transmitter and receiver... Many Teletypes used governor regulated DC
When the current loop for a Teletype is opened (sending a BREAK), the
machine "runs open", making a lot of noise. The selector magnets never
stop the rotation of the receive shaft, so the mechanism just keeps going
So... back on DMX, a BREAK is a continuous SPACE (low out of the USART)
while the USART idles in the MARK (high out of the USART) condition (just
adding more and more stop bits).
Have fun with it!
Get the Internet just the way you want it.
Free software, free e-mail, and free Internet access for a month!
Try Juno Web: dl.http://www.juno.com/dynoget/tagj.
See also: www.piclist.com/techref/displays.htm?key=dmx
You must be a member of the
piclist mailing list
(not only a www.piclist.com member) to post to the