TMCStepper
Library supporting Trinamic Stepper Drivers for Arduino platforms
Loading...
Searching...
No Matches
TMCStepper.h
Go to the documentation of this file.
1
19
#pragma once
20
21
//#define TMCDEBUG
22
23
#pragma GCC diagnostic push
24
#pragma GCC diagnostic ignored "-Wunused-function"
25
#pragma GCC diagnostic ignored "-Wunused-variable"
26
27
#if defined(ARDUINO) && ARDUINO >= 100
28
#include <Arduino.h>
29
#include <SPI.h>
30
#include <Stream.h>
31
#elif defined(bcm2835)
32
#include <bcm2835.h>
33
#include "
source/bcm2835_spi.h
"
34
#include "
source/bcm2835_stream.h
"
35
#elif defined(__has_include)
36
#if __has_include(<Arduino.h>)
37
#include <Arduino.h>
38
#endif
39
#if __has_include(<SPI.h>)
40
#include <SPI.h>
41
#endif
42
#if __has_include(<Stream.h>)
43
#include <Stream.h>
44
#endif
45
#endif
46
47
#ifndef TMCSTEPPER_SW_SERIAL
48
#ifdef __has_include
49
#if __has_include(<SoftwareSerial.h>)
50
#define TMCSTEPPER_SW_SERIAL 1
51
#else
52
#define TMCSTEPPER_SW_SERIAL 0
53
#endif
54
#elif defined(__AVR__) || defined(TARGET_LPC1768) || defined(ARDUINO_ARCH_STM32)
55
#define TMCSTEPPER_SW_SERIAL 1
56
#else
57
#define TMCSTEPPER_SW_SERIAL 0
58
#endif
59
#endif
60
61
#define HAS_HALF_DUPLEX_MODE (TMCSTEPPER_SW_SERIAL && defined(ARDUINO_ARCH_AVR))
62
63
#if TMCSTEPPER_SW_SERIAL
64
#include <SoftwareSerial.h>
65
#endif
66
67
#include "
source/SERIAL_SWITCH.h
"
68
#include "
source/SW_SPI.h
"
69
70
#pragma GCC diagnostic pop
71
72
// Usage: INIT_REGISTER(GCONF); // Result: GCONF_t GCONF_register{};
73
#define INIT_REGISTER(REG) REG##_t REG##_register{}
74
#define SET_ALIAS(TYPE, DRIVER, NEW, ARG, OLD) TYPE (DRIVER::*NEW)(ARG) = &DRIVER::OLD
75
76
#define TMCSTEPPER_VERSION 0x000809
// v0.8.9 - Marlin bumps minor version
77
78
#include "
source/TMC2130_bitfields.h
"
79
#include "
source/TMC2160_bitfields.h
"
80
#include "
source/TMC5130_bitfields.h
"
81
#include "
source/TMC5160_bitfields.h
"
82
#include "
source/TMC2208_bitfields.h
"
83
#include "
source/TMC2209_bitfields.h
"
84
#include "
source/TMC2240_bitfields.h
"
85
#include "
source/TMC2660_bitfields.h
"
86
87
#include "
source/TMCStepperBase.h
"
88
#include "
source/TMC2130Stepper.h
"
89
#include "
source/TMC2160Stepper.h
"
90
#include "
source/TMC5130Stepper.h
"
91
#include "
source/TMC5160Stepper.h
"
92
#include "
source/TMC2208Stepper.h
"
93
#include "
source/TMC2209Stepper.h
"
94
#include "
source/TMC2224Stepper.h
"
95
#include "
source/TMC2240Stepper.h
"
96
#include "
source/TMC2660Stepper.h
"
SERIAL_SWITCH.h
SW_SPI.h
TMC2130_bitfields.h
TMC2130Stepper.h
TMC2160_bitfields.h
TMC2160Stepper.h
TMC2208_bitfields.h
TMC2208Stepper.h
TMC2209_bitfields.h
TMC2209Stepper.h
TMC2224Stepper.h
TMC2240_bitfields.h
TMC2240Stepper.h
TMC2660_bitfields.h
TMC2660Stepper.h
TMC5130_bitfields.h
TMC5130Stepper.h
TMC5160_bitfields.h
TMC5160Stepper.h
TMCStepperBase.h
bcm2835_spi.h
bcm2835_stream.h
src
TMCStepper.h
Generated by
1.16.1