9 #if defined(__cplusplus)
15 typedef uint8_t (*sm4_stop_cb_t)();
18 typedef void (*sm4_update_pos_cb_t)(uint16_t dx, uint16_t dy, uint16_t dz, uint16_t de);
21 typedef uint16_t (*sm4_calc_delay_cb_t)(uint16_t nd, uint16_t dd);
25 extern sm4_stop_cb_t sm4_stop_cb;
28 extern sm4_update_pos_cb_t sm4_update_pos_cb;
31 extern sm4_calc_delay_cb_t sm4_calc_delay_cb;
35 extern uint8_t sm4_get_dir(uint8_t axis);
38 extern void sm4_set_dir(uint8_t axis, uint8_t dir);
41 extern uint8_t sm4_get_dir_bits(
void);
44 extern void sm4_set_dir_bits(uint8_t dir_bits);
47 extern void sm4_do_step(uint8_t axes_mask);
50 extern uint16_t sm4_line_xyze_ui(uint16_t dx, uint16_t dy, uint16_t dz, uint16_t de);
51 extern uint16_t sm4_line_xyz_ui(uint16_t dx, uint16_t dy, uint16_t dz);
54 #if defined(__cplusplus)