From the manual and also i've tried using a frequency oscilltor it basically says i need 10 KHz and every falling edge will move the motor 1 increment (1.8 degrees). I need it to go alot faster than it does at 10 KHz so i need atleast about 80 KHz to rotate at a decent speed.
(80kHz*pulse) * (1.8 deg/pulse) / (360 deg/rotation) = 400 rotations per second
are you sure you need a camera to rotate that fast?!
you are sending the PWM to a motor driver, right? is it controlling a stepper motor? if so you dont need duty cycle, you just need a falling edge. in that case, this pseudo code should work with just a single timer:
bring all digital ports high
if timer says X time has passed:
bring port for motor A low
if timer says Y time has passed:
bring port for motor B low
if timer says Z time has passed:
bring port for motor C low
wait(5 microseconds) //makes sure the falling edge completes itself in hardware
so in the code, the lower X, Y, and Z are, the more falling edges that particular motor will see. the problem however is that its a processor intensive program, so if you need your controller to do otherstuff it wont work . . . but it would work for like 20+ motors if you needed . . .
you can maybe use a timer interrupt to run your PWM code while your device does other stuff, if you have a few cycles to spare.
not sure if there is any other way to do this without buying extra controllers/hardware . . .