) I need to slow dowm the Ardu`s PWM output to something between 8 and 16 kHz, how to?
Do you mean you need to speed up
the Arduino PWM to between 8 and 16kHz?
Is it the case that the conversion time for the analogRead is too slow, or is it just the dead time caused by it?
If you start an analogue conversion, you can go off, do some computations, then come back to see if the convestion is complete.
The code change is quite simple, and means you split "analogRead" into two parts
1) a mux setup and begin conversion
2) a non-blocking poll end-of-conversion