I have done the same but written the DMX recieve routien completely under interupts. this alllows the programme to do what it wants to do while the DMX recieve part is being done automatically when required. If you are interested I can email you an example. Paul Harris ----- Original Message ----- from: Bob Ammerman date: Friday, October 26, 2001 7:05 am subject: Re: [PIC]: Overclock f87x and other questions > ----- Original Message ----- > From: "Josh Koffman" > To: > Sent: Thursday, October 25, 2001 7:55 PM > Subject: Re: [PIC]: Overclock f87x and other questions > > > > Thanks for the reply Bob > > > Re: 250 Kbit / Sec async I/O via UART .... > > > > > > > How would you do it? I base most of my code of this type on the > ideas of > > Kelly Khols, who is in my mind a pretty smart guy. I've never seen > > anyone else using PICs to receive data like this (it's DMX, in > case you > > haven't figured it out. It's a lighting control protocol). > > Yeah, I know all about DMX. What I'm saying is that with only 40 > instructions per byte your going to have to do some sort of pseudo > multitaskusing polling at task level with no interrupts enabled. > Something like this: > > 1: create a macro that handles getting a character from the UART. For > purpose of discussion, assume the macro uses 20 instructions. > > 2: make sure you call the macro after every 20 or fewer > instructions of your > task code. > > Its a pain in the neck, but you can get some pretty complex stuff > to work > that way. > > Bob Ammerman > RAm Systems > > -- > http://www.piclist.com hint: The list server can filter out subtopics > (like ads or off topics) for you. See http://www.piclist.com/#topics > > > -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.