Skip to content
Snippets Groups Projects
Commit 8043a4e1 authored by Jake Read's avatar Jake Read
Browse files

reich full system walkthrough

parent 2d46110b
No related branches found
No related tags found
No related merge requests found
No preview for this file type
...@@ -61,9 +61,12 @@ void stepper_targetspeed_float(stepper_t *stepper, float speed){ ...@@ -61,9 +61,12 @@ void stepper_targetspeed_float(stepper_t *stepper, float speed){
void stepper_targetspeed_steps(stepper_t *stepper, uint32_t speed){ void stepper_targetspeed_steps(stepper_t *stepper, uint32_t speed){
uint32_t speedmin = ((speed / (stepper->position_per_200_steps / 200)) * stepper->microsteps); // enforce no division by 0 uint32_t speedmin = ((speed / (stepper->position_per_200_steps / 200)) * stepper->microsteps); // enforce no division by 0
// minimum of 1 step / s
// if speed is 0, we leave speed at minimum and set state to not step?
(speedmin < 1) ? speedmin = 1 : (0); (speedmin < 1) ? speedmin = 1 : (0);
// timing not accurate to real-world yet // timing not accurate to real-world yet
stepper->speed_period = 300000000 / speedmin; // timer is 48MHz clock on a DIV16, so we have 3 000 000 ticks / s (333ns resolution, wow)
stepper->speed_period = 60000000 / speedmin;
} }
void stepper_update(stepper_t *stepper){ void stepper_update(stepper_t *stepper){
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment