Don't be too quick to denigrate IOC! I'm using IOC on a running processor and I'm happy as a clam!! Yes, you do have to be careful - don't poll the port, define the entire port as inputs, let your interrupt do the reads, etc., but in some instances, it can be a near ideal answer to an otherwise sticky program. You can let your mainline code do all your heavy background routines and never miss an input change. In my case, I'm using IOC to handle two 2-bit optical encoder inputs and three pushbuttons. Saves me from having to poll those devices at a high enough rate to ensure no data loss, which would seriously impact the useful work I need to do in the background. My input from the encoders comes in bursts that, when they occur, demand a lot of processor activity, essentially suspending background activity during that time. To do this application in a polling environment would require a lot more horsepower than I'm presently using (I'm using 16F628s - maxed out on memory and RAM usage, but sufficient for the job!). To each their own, I guess! Dennis Bob Blick wrote: >>On Friday, Jun 11, 2004, at 14:28 US/Pacific, Bob Blick wrote: >> >> >>>Interrupt-on-change should be renamed "wake-up-on-change" because it's >>>useless on a running processor. >>> >>> >>> >>Oh. Rats! I suppose it would be OK if you have the entire port set to >>be inputs, as in a keyboard scanner? >> >> > >Yes, but you also don't want to poll the port, so if you use IOC you do >all reads in the interrupt service routine. > >Cheers, > >Bob > >-- >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.