Hi All, I'm trying to get my arms around a problem that is probably simple but I can't seem to come up with the best answer for. I'm trying to use a 16F627 as an RPM encoder simulator. The encoder I want to simulate sends 60 pulses per shaft revolution. I would like to simulate RPMs in the 10 to 500 range. I would like to use 2 buttons to increment or decrement the simulated RPM by 1. My math shows that the period of the pulse at 500 RPM is 0.00003333 seconds. 499 RPM is 0.0003340. A spread of only .00000007. The smallest timer interrupt period is 0.00000040 seconds assuming a 10 Mhz clock. Obviously not enough let alone time time to process anything in the ISR. Am I missing something? Seems like this should be a cake walk for the PIC. Assuming the first problem can be solved, would a lookup table be the easiest way to handle feeding values to whatever method I use to vary the pulse times or is there a simpler way? Open to any and all ideas. Thanks in advance, Lance -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body