diff --git a/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_pwm_output.c b/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_pwm_output.c index b5595e418f24a85953b50aa254c3cc4eda2d3837..3d1b6e19c626b3e0b4428afe4bd8db5a7e0c1d00 100644 --- a/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_pwm_output.c +++ b/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_pwm_output.c @@ -3,7 +3,7 @@ #define THROTTLE_PULSE_WIDTH_LOW 100000 // 1us #define THROTTLE_PULSE_WIDTH_HIGH 200000 // 2us #define PERIOD_WIDTH 222222 // 100000000 ns / 450 -#define PULSE_WIDTH_ADDR_OFFSET 4 +#define PULSE_WIDTH_ADDR_OFFSET 1 struct PWMOutputDriverState { int *outputs[4]; diff --git a/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_tests.c b/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_tests.c index ca3583935249c2a96655e454a8d29999ad0182cf..0bff80a1f520b1b92967448b2539ad08e6004783 100644 --- a/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_tests.c +++ b/quad/xsdk_workspace/modular_quad_pid/src/hw_impl_zybo_tests.c @@ -95,7 +95,7 @@ int test_zybo_pwm_inputs() { for (i = 0; i < 6; i += 1) { pwm_inputs.read(&pwm_inputs, i, &pwms[i]); } - int temp = 0; + continue; } } @@ -117,18 +117,22 @@ int test_zybo_pwm_inputs() { int test_zybo_pwm_outputs() { struct PWMOutputDriver pwm_outputs = create_zybo_pwm_outputs(); pwm_outputs.reset(&pwm_outputs); + struct SystemDriver sys = create_zybo_system(); + sys.reset(&sys); unsigned long pwms[4]; - pwms[0] = 1000; - pwms[1] = 1000; - pwms[2] = 1000; - pwms[3] = 1000; + pwms[0] = 100000; + pwms[1] = 100000; + pwms[2] = 100000; + pwms[3] = 100000; + int n = 0; while (1) { int i; for (i = 0; i < 4; i += 1) { - pwm_outputs.write(&pwm_outputs, i, pwms[i]); + pwm_outputs.write(&pwm_outputs, i, pwms[i] + n++); + sys.sleep(&sys, 50); } - int temp = 0; + continue; } }