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:
2023-05-14 21:22:04 +02:00
commit 349d1d644e
27 changed files with 1051 additions and 0 deletions

7
lib/motor/dfquad.h Normal file
View 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
View 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
View 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