A49xx/DRV88xx stepper motor driver

Stepper motor driver that supports A49xx and DRV88xx families of stepper drivers.

Example

```rust

![deny(unsafe_code)]

![deny(warnings)]

![no_std]

extern crate panicabort; extern crate cortexm; extern crate embeddedhal; extern crate tm4c123xhal as hal; extern crate stepper_rs;

use hal::delay::Delay; use hal::gpio::GpioExt; use hal::sysctl::SysctlExt;

fn main() { let p = hal::Peripherals::take().unwrap(); let sysctl = p.SYSCTL.constrain(); let portc = p.GPIOPORTC.split(&sysctl.powercontrol); let clocks = sysctl.clock_setup.freeze();

let cp = cortex_m::Peripherals::take().unwrap();
let mut driver = stepper_rs::MotorDriver::a4988(
    Delay::new(cp.SYST, &clocks),
    portc.pc6.into_push_pull_output(),
    portc.pc7.into_push_pull_output(),
    200,
    16,
    100f32
);

loop {
    driver.set_speed(100f32);
    driver.set_direction(true);
    driver.move_instant(600);
    driver.set_direction(false);
    driver.move_instant(600);

    driver.set_speed(300f32);
    driver.set_direction(true);
    driver.move_smooth(1600, 150, 150);
    driver.set_direction(false);
    driver.move_smooth(1600, 150, 150);
}

} ```

TODO

License

Licensed at your option under either of