On Tue, 26 Oct 1999 11:21:31 -0600 Jerry writes: >I'm attempting a design on a DMX512 receiver. DMX is a protocol used in >stage lighting control systems. It is asynchronous serial, 1 start, 8 >data, and 2 stop, no parity, 250kbaud. A packet of up to 512 8bit dimmer >values is preceded by a break character, specified as between 88uS and 1 >second. > >This design will be using the 17C43 or 44. I have a couple thoughts on >detecting the break. I have seen a few posts here on the subject, and I >have some questions. If I use the framing error bit to detect the break, >how will I know if I have a real framing error? I thought about >programming a 12C5xx to just look for a 88uS low, and then issue an >'interrupt' to the 17C43....but this sounds like overkill to me. > I've done several products using the 16c74 to receive (and transmit) DMX. I just watch for the framing error flag to be set. As to how can you tell if you get a "real framing error", you can't... Though I GUESS something like this could be done... On detecting FE, check to see if all data bits of the received character are low. If so, say it's a break and start checking for the start code (typically 0x00). If you detect an FE and all the bits of the received character are not low, assume it's an error and abort the reception of the packet (good ol' state machines!). Continue to wait for a VALID break (FE with 0x00 received character), then move on to waiting for the start code. As I said, just wait for FE and assume its a break. If you're received DMX is so bad that you get framing errors that are not breaks, you're probably gonna have lotsa flickering lights no matter what you do. Harold Harold Hallikainen harold@hallikainen.com Hallikainen & Friends, Inc. See the FCC Rules at http://hallikainen.com/FccRules and comments filed in LPFM proceeding at http://hallikainen.com/lpfm ___________________________________________________________________ Get the Internet just the way you want it. Free software, free e-mail, and free Internet access for a month! Try Juno Web: http://dl.www.juno.com/dynoget/tagj.