@@ -62,15 +62,15 @@ static void driver_delay_ms (uint32_t ms, void (*callback)(void))
6262
6363#if SQUARING_ENABLED
6464
65- inline static void set_step_outputs (axes_signals_t step_outbits_0 )
65+ inline static void set_step_outputs (axes_signals_t step_out_0 )
6666{
67- axes_signals_t step_outbits_1 ;
67+ axes_signals_t step_out_1 ;
6868
69- step_outbits_1 . mask = (step_outbits_0 . mask & motors_1 .mask ) ^ settings .steppers .step_invert .mask ;
70- step_outbits_0 . mask = (step_outbits_0 . mask & motors_0 .mask ) ^ settings .steppers .step_invert .mask ;
69+ step_out_1 . bits = (step_out_0 . bits & motors_1 .bits ) ^ settings .steppers .step_invert .bits ;
70+ step_out_0 . bits = (step_out_0 . bits & motors_0 .bits ) ^ settings .steppers .step_invert .bits ;
7171
72- mcu_gpio_set (& gpio [STEP_PORT0 ], step_outbits_0 . mask , AXES_BITMASK );
73- mcu_gpio_set (& gpio [STEP_PORT1 ], step_outbits_1 . mask , AXES_BITMASK );
72+ mcu_gpio_set (& gpio [STEP_PORT0 ], step_out_0 . bits , AXES_BITMASK );
73+ mcu_gpio_set (& gpio [STEP_PORT1 ], step_out_1 . bits , AXES_BITMASK );
7474}
7575
7676static axes_signals_t getGangedAxes (bool auto_squared )
@@ -88,18 +88,18 @@ static axes_signals_t getGangedAxes (bool auto_squared)
8888
8989#else
9090
91- inline static void set_step_outputs (axes_signals_t step_outbits )
91+ inline static void set_step_outputs (axes_signals_t step_out )
9292{
93- step_outbits . mask = (step_outbits . mask ) ^ settings .steppers .step_invert .mask ;
93+ step_out . bits = (step_out . bits ) ^ settings .steppers .step_invert .bits ;
9494
95- mcu_gpio_set (& gpio [STEP_PORT0 ], step_outbits . mask , AXES_BITMASK );
95+ mcu_gpio_set (& gpio [STEP_PORT0 ], step_out . bits , AXES_BITMASK );
9696}
9797
9898#endif
9999
100- inline static void set_dir_outputs (axes_signals_t dir_outbits )
100+ inline static void set_dir_outputs (axes_signals_t dir_out )
101101{
102- mcu_gpio_set (& gpio [DIR_PORT ], dir_outbits .value ^ settings .steppers .dir_invert .mask , AXES_BITMASK );
102+ mcu_gpio_set (& gpio [DIR_PORT ], dir_out .value ^ settings .steppers .dir_invert .mask , AXES_BITMASK );
103103}
104104
105105static void stepperEnable (axes_signals_t enable , bool hold )
@@ -142,13 +142,13 @@ static void stepperCyclesPerTick (uint32_t cycles_per_tick)
142142// If spindle synchronized motion switch to PID version.
143143static void stepperPulseStart (stepper_t * stepper )
144144{
145- if (stepper -> new_block ) {
146- stepper -> new_block = false ;
147- set_dir_outputs (stepper -> dir_outbits );
145+ if (stepper -> dir_changed . bits ) {
146+ stepper -> dir_changed . bits = 0 ;
147+ set_dir_outputs (stepper -> dir_out );
148148 }
149149
150- if (stepper -> step_outbits . value ) {
151- set_step_outputs (stepper -> step_outbits );
150+ if (stepper -> step_out . bits ) {
151+ set_step_outputs (stepper -> step_out );
152152 }
153153}
154154
@@ -157,13 +157,13 @@ static void stepperPulseStart (stepper_t *stepper)
157157// TODO: only delay after setting dir outputs?
158158static void stepperPulseStartDelayed (stepper_t * stepper )
159159{
160- if (stepper -> new_block ) {
161- stepper -> new_block = false ;
162- set_dir_outputs (stepper -> dir_outbits );
160+ if (stepper -> dir_changed . bits ) {
161+ stepper -> dir_changed . bits = 0 ;
162+ set_dir_outputs (stepper -> dir_out );
163163 }
164164
165- if (stepper -> step_outbits . value ) {
166- // next_step_outbits = stepper->step_outbits ; // Store out_bits
165+ if (stepper -> step_out . bits ) {
166+ // next_step_out = stepper->step_out ; // Store out_bits
167167// PULSE_TIMER->CTL |= TIMER_A_CTL_CLR|TIMER_A_CTL_MC1;
168168 }
169169}
@@ -438,7 +438,7 @@ bool driver_init ()
438438 systick_timer .enable = 1 ;
439439
440440 hal .info = "Simulator" ;
441- hal .driver_version = "241209 " ;
441+ hal .driver_version = "250328 " ;
442442 hal .driver_setup = driver_setup ;
443443 hal .rx_buffer_size = RX_BUFFER_SIZE ;
444444 hal .f_step_timer = F_CPU ;
0 commit comments