> Barry, I have a PIC running at 40MHz that puts out 6-bit PWM > from 100Hz to 279Hz > > http://www.piclist.com/techref/microchip/HV_PWM_Proto.htm I'd suspect that somebody confused what was meant by max and min along the way. It seems more likely that somebody wanted a non-flicker spec. Also, they are liable to have been thinking in terms of PWM frame rate rather than smallest bit rate - and this may have been set empirically. At 250 Hz you are 5 x 50 Hz PAL TV interlaced frame rate which is ~~ flicker free on typical pictures. 25 Hz (true frame rate) is too low for most people. Joe's hardware solution is sure to be better than the following, but: Software PWM using an IRQ timer is trivially easy. Upper limit depends on IRQ frequency and PWM resolution. Lower frequency is essentially unlimited. You can run multiple PWMs with mini al extra code size and RAM for an extra counter or compare register per PWM. For naive implementation code is little more than: On_IRQ increment counter ; with rollover to zero if counter =3D 0 then set all PWM output bits high. for all channels if counter >=3D channel_value set relevant PWM bit low. R --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .