Newer
Older
#include "stm32f4xx_rcc.h"
#include "stm32f4xx_gpio.h"
#elif defined(STM32F10X_MD) || defined(STM32F10X_CL)
#include "stm32f10x_rcc.h"
#include "stm32f10x_gpio.h"
#include "initialisation.h"
#include "clock.h"
#ifdef ROBOTHW
Initialisation::Initialisation(PositionPlusAngle position) : start(position), tirette(0)
GigAnon
committed
{
rcd = 0;
rcg = 0;
}
#else
#include <QDebug>
Initialisation::Initialisation(PositionPlusAngle position, bool yellow, Robot* robot) : start(position), robot(robot)
{
setYellow(yellow);
}
#endif
void Initialisation::init()
{
initClock();
initGPIO();
#ifdef ROBOTHW
odometrie = new Odometrie(rcg, rcd);
#else
odometrie = new Odometrie(this->robot);
#endif
strategie = new StrategieV2(isYellow());
Arnaud Cadot
committed
/*
#ifdef ROBOTHW
tirette->attendreRemise();
tirette->attendreEnlevee();
Arnaud Cadot
committed
*/
Clock::getInstance()->matchStart(); // Will also start the callbacks
asservissement = new Asservissement(odometrie);
#ifdef ROBOTHW
setYellow();
#endif
if(!isYellow())
{
start = start.getSymetrical();
}
}
bool Initialisation::isYellow()
{
return yellow;
}
GigAnon
committed
Asservissement* Initialisation::getAsservissement()
{
return asservissement;
}
Odometrie* Initialisation::getOdometrie()
{
return odometrie;
}
StrategieV2* Initialisation::getStrategie()
{
return strategie;
}
void Initialisation::setYellow(bool val)
{
yellow = val;
}