Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches

Main header file for stepper motion controller driver API. More...

#include <zephyr/kernel.h>
#include <zephyr/device.h>
#include <errno.h>
#include <zephyr/syscalls/stepper_ctrl.h>

Go to the source code of this file.

Enumerations

enum  stepper_ctrl_direction { STEPPER_CTRL_DIRECTION_NEGATIVE = 0 , STEPPER_CTRL_DIRECTION_POSITIVE = 1 }
 Stepper Motion Controller direction options. More...
enum  stepper_ctrl_run_mode { STEPPER_CTRL_RUN_MODE_HOLD = 0 , STEPPER_CTRL_RUN_MODE_POSITION = 1 , STEPPER_CTRL_RUN_MODE_VELOCITY = 2 }
 Stepper Motion Controller run mode options. More...
enum  stepper_ctrl_event { STEPPER_CTRL_EVENT_STEPS_COMPLETED = 0 , STEPPER_CTRL_EVENT_LEFT_END_STOP_DETECTED = 1 , STEPPER_CTRL_EVENT_RIGHT_END_STOP_DETECTED = 2 , STEPPER_CTRL_EVENT_STOPPED = 3 }
 Stepper Motion Controller Events. More...

Functions

int stepper_ctrl_set_reference_position (const struct device *dev, const int32_t value)
 Set the reference position.
int stepper_ctrl_get_actual_position (const struct device *dev, int32_t *value)
 Get the actual step count.
int stepper_ctrl_set_event_cb (const struct device *dev, stepper_ctrl_event_callback_t callback, void *user_data)
 Set the callback function to be called when a stepper motion controller event occurs.
int stepper_ctrl_set_microstep_interval (const struct device *dev, const uint64_t microstep_interval_ns)
 Set the time interval between steps in nanoseconds with immediate effect.
int stepper_ctrl_move_by (const struct device *dev, const int32_t micro_steps)
 Set the micro-steps to be moved from the current position i.e.
int stepper_ctrl_move_to (const struct device *dev, const int32_t micro_steps)
 Set the absolute target position of the stepper.
int stepper_ctrl_run (const struct device *dev, const enum stepper_ctrl_direction direction)
 Run the stepper with a given step interval in a given direction.
int stepper_ctrl_stop (const struct device *dev)
 Stop the stepper.
int stepper_ctrl_is_moving (const struct device *dev, bool *is_moving)
 Check if the stepper is currently moving.

Detailed Description

Main header file for stepper motion controller driver API.