Allow libServo::attach to work on Teensy 3.5/3.6

2.0.x
Scott Lahteine 7 years ago
parent f89f7c4a82
commit cbcb284f4a

@ -24,6 +24,7 @@
#ifndef HAL_SERVO_STM32F1_H #ifndef HAL_SERVO_STM32F1_H
#define HAL_SERVO_STM32F1_H #define HAL_SERVO_STM32F1_H
// Path needed, otherwise HAL version is used
#include <../../libraries/Servo/src/Servo.h> #include <../../libraries/Servo/src/Servo.h>
// Inherit and expand on the official library // Inherit and expand on the official library

@ -6,13 +6,17 @@
#include "HAL_Servo_Teensy.h" #include "HAL_Servo_Teensy.h"
uint8_t servoPin[MAX_SERVOS] = { 0 };
int8_t libServo::attach(const int pin) { int8_t libServo::attach(const int pin) {
if (this->servoIndex >= MAX_SERVOS) return -1; if (this->servoIndex >= MAX_SERVOS) return -1;
return Servo::attach(pin); if (pin > 0) servoPin[this->servoIndex] = pin;
return Servo::attach(servoPin[this->servoIndex]);
} }
int8_t libServo::attach(const int pin, const int min, const int max) { int8_t libServo::attach(const int pin, const int min, const int max) {
return Servo::attach(pin, min, max); if (pin > 0) servoPin[this->servoIndex] = pin;
return Servo::attach(servoPin[this->servoIndex], min, max);
} }
void libServo::move(const int value) { void libServo::move(const int value) {

@ -51,7 +51,6 @@
* *
*/ */
#include "../inc/MarlinConfig.h" #include "../inc/MarlinConfig.h"
#if HAS_SERVOS && !(IS_32BIT_TEENSY || defined(TARGET_LPC1768) || defined(STM32F4)) #if HAS_SERVOS && !(IS_32BIT_TEENSY || defined(TARGET_LPC1768) || defined(STM32F4))

Loading…
Cancel
Save