mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-12-23 21:01:25 +01:00
DC mode portability for ARM (SAMD21/STM32)
This commit is contained in:
parent
a985356f0c
commit
915de96e80
@ -137,10 +137,12 @@ class MotorDriver {
|
||||
inline byte getSignalPin() { return signalPin; };
|
||||
virtual void setDCSignal(byte speedByte);
|
||||
inline void detachDCSignal() {
|
||||
#ifndef ARDUINO_ARCH_ESP32
|
||||
setDCSignal(128);
|
||||
#else
|
||||
#if defined(__arm__)
|
||||
pinMode(brakePin, OUTPUT);
|
||||
#elif defined(ARDUINO_ARCH_ESP32)
|
||||
ledcDetachPin(brakePin);
|
||||
#else
|
||||
setDCSignal(128);
|
||||
#endif
|
||||
};
|
||||
virtual int getCurrentRaw();
|
||||
@ -148,7 +150,8 @@ class MotorDriver {
|
||||
virtual unsigned int raw2mA( int raw);
|
||||
virtual unsigned int mA2raw( unsigned int mA);
|
||||
inline bool brakeCanPWM() {
|
||||
#ifdef ARDUINO_ARCH_ESP32
|
||||
#if defined(ARDUINO_ARCH_ESP32) || defined(__arm__)
|
||||
// TODO: on ARM we can use digitalPinHasPWM, and may wish/need to
|
||||
return true;
|
||||
#else
|
||||
#ifdef digitalPinToTimer
|
||||
@ -156,7 +159,7 @@ class MotorDriver {
|
||||
#else
|
||||
return (brakePin<14 && brakePin >1);
|
||||
#endif //digitalPinToTimer
|
||||
#endif //ESP32
|
||||
#endif //ESP32/ARM
|
||||
}
|
||||
inline int getRawCurrentTripValue() {
|
||||
return rawCurrentTripValue;
|
||||
|
Loading…
Reference in New Issue
Block a user