Dr_Acula : <i>Pulsin 3,0,w0 ... will give accurate readings well over 50,000 rpms. Max w0 is 65,535 so this arrangement won't work below about 100rpms. </i>
One trick for dealing with slower rpm would be to underclock the 08M while executing PULSIN. 1MHz should be good enough down to 25rpm and in terms of cycling that may be too little progress being made to be worth reporting. Auto-ranging could adjust the oscillator speed on the fly.
More slots to measure helps keep the data refresh rate high at low rpm. It doesn't matter which slot/block time is measured but errors in cutting accuracy would cause some variances in data. These can be averaged out in software, or may just 'disappear' in the maths.
For higher rpm, do the opposite; overclock the 08M to 8MHz and just one or less slots.
One quick and easy way to stop 'jitter' and rapid changing of rpm display etc, is to check if the rpm is rising or falling. If the next is in the same direction, update the display, if in the opposite, only update if the change is over a certain size or percentage of current reading. That's also good for taking noise out of READADC inputs.
Edited by - hippy on 27/07/2007 13:55:50