Pendelzug Erstversion
new file: .gitignore new file: .vscode/extensions.json new file: ErsterTest.code-workspace new file: include/README new file: lib/AnalogFiveButtons/AnalogFiveButtons.cpp new file: lib/AnalogFiveButtons/AnalogFiveButtons.h new file: lib/Imotor/Imotor.cpp new file: lib/Imotor/Imotor.h new file: lib/L298n/L298n.cpp new file: lib/L298n/L298n.h new file: lib/README new file: lib/fahrt/fahrt.cpp new file: lib/fahrt/fahrt.h new file: lib/gleis/gleis.cpp new file: lib/gleis/gleis.h new file: lib/gleisabschnitt/gleisabschnitt.cpp new file: lib/gleisabschnitt/gleisabschnitt.h new file: lib/locomotive/locomotive.cpp new file: lib/locomotive/locomotive.h new file: lib/motor/dfquad.h new file: lib/motor/motor.cpp new file: lib/motor/motor.h new file: lib/weiche/weiche.cpp new file: lib/weiche/weiche.h new file: platformio.ini new file: src/main.cpp new file: test/README
This commit is contained in:
7
lib/motor/dfquad.h
Normal file
7
lib/motor/dfquad.h
Normal file
@@ -0,0 +1,7 @@
|
||||
#include "motor.h"
|
||||
|
||||
/* Motor mot1(3, 4, LOW);
|
||||
Motor mot2(11, 12, HIGH);
|
||||
Motor mot3(5, 8, LOW);
|
||||
Motor mot4(6, 7, HIGH);
|
||||
*/
|
||||
47
lib/motor/motor.cpp
Normal file
47
lib/motor/motor.cpp
Normal file
@@ -0,0 +1,47 @@
|
||||
#include "Motor.h"
|
||||
#include "Arduino.h"
|
||||
|
||||
Motor::Motor(int pinPwm, int pinDir, int dirForward)
|
||||
{
|
||||
_pinPwm = pinPwm;
|
||||
_pinDir = pinDir;
|
||||
_dirForward = dirForward;
|
||||
if (dirForward==LOW)
|
||||
{
|
||||
_dirForward=LOW;
|
||||
_dirBackward=HIGH;
|
||||
}
|
||||
else
|
||||
{
|
||||
_dirForward=HIGH;
|
||||
_dirBackward=LOW;
|
||||
}
|
||||
_currentDir = motorForward;
|
||||
|
||||
pinMode(_pinPwm,OUTPUT);
|
||||
pinMode(_pinDir,OUTPUT);
|
||||
}
|
||||
|
||||
void Motor::setSpeed(int speed)
|
||||
{
|
||||
setDirection (_currentDir);
|
||||
analogWrite(_pinPwm, speed);
|
||||
}
|
||||
|
||||
void Motor::setDirection(MotorDirection dir)
|
||||
{
|
||||
_currentDir=dir;
|
||||
if (_currentDir == motorForward)
|
||||
{
|
||||
digitalWrite(_pinDir, _dirForward);
|
||||
}
|
||||
else
|
||||
{
|
||||
digitalWrite(_pinDir, _dirBackward);
|
||||
}
|
||||
}
|
||||
|
||||
void Motor::Stop()
|
||||
{
|
||||
setSpeed (0);
|
||||
}
|
||||
22
lib/motor/motor.h
Normal file
22
lib/motor/motor.h
Normal file
@@ -0,0 +1,22 @@
|
||||
#ifndef Motor_h
|
||||
#define Motor_h
|
||||
|
||||
#include "Arduino.h"
|
||||
#include "Imotor.h"
|
||||
|
||||
class Motor: public IMotor
|
||||
{
|
||||
public:
|
||||
Motor(int pinPwm, int pinDir, int dirForward);
|
||||
virtual void setSpeed(int speed) override;
|
||||
virtual void setDirection(MotorDirection dir) override;
|
||||
virtual void Stop() override;
|
||||
|
||||
private:
|
||||
int _pinDir;
|
||||
int _dirForward;
|
||||
int _dirBackward;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user