Then you can use a Capture-Compare module or even a timer connected to the main clock with a suitable divided.
As mentioned, you do not need to use PWM for single or half stepping. The final application might be a bit noisy when the motors are rotating.
There are external drivers that you can just assert the direction and then send clock pulses for the required number of steps. They include the power drivers (H-bridges). I have used one from ST in the past and still have the schematic on paper if you want to go down that route and simpy use a stepper motor in your applications.
Hvae a look on Microchip, they have an excellent app-note on stepper motors fundamentals.