Codestuff
This commit is contained in:
parent
f544ab7822
commit
d8e83400c8
7 changed files with 198 additions and 0 deletions
Binary file not shown.
11
source/Concept/Framework/modules/executor/aktuator.c
Executable file
11
source/Concept/Framework/modules/executor/aktuator.c
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#include "aktuator.h"
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
void Aktuator::Kick()
|
||||||
|
{
|
||||||
|
(parent->GetModule<Kicker>(IO_KICKER_MAIN))->SetEnabled(true);//aktivate kicker
|
||||||
|
(parent->GetModule<Dribbler>(IO_DRIBBLER_MAIN))->SetSpeed(-1);//aktivate dribbler reverse
|
||||||
|
msleep(10);//wait 100us
|
||||||
|
(parent->GetModule<Kicker>(IO_KICKER_MAIN))->SetEnabled(false);//deaktivate kicker
|
||||||
|
(parent->GetModule<Dribbler>(IO_DRIBBLER_MAIN))->SetSpeed(1);//deaktivate dribbler reverse
|
||||||
|
}
|
27
source/Concept/Framework/modules/executor/aktuator.h
Executable file
27
source/Concept/Framework/modules/executor/aktuator.h
Executable file
|
@ -0,0 +1,27 @@
|
||||||
|
#ifndef _AKTUATOR_H
|
||||||
|
#define _AKTUATOR_H
|
||||||
|
|
||||||
|
#include "../../stdafx.h"
|
||||||
|
|
||||||
|
class Aktuator : public IO_Module
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Aktuator()
|
||||||
|
{
|
||||||
|
this->parent = NULL;
|
||||||
|
this->moduleId = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
Aktuator(uint32 aktuatorId)
|
||||||
|
{
|
||||||
|
this->parent = NULL;
|
||||||
|
this->moduleId = aktuatorId;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
public:
|
||||||
|
void Kick();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
43
source/Concept/Framework/modules/logic/logic.c
Executable file
43
source/Concept/Framework/modules/logic/logic.c
Executable file
|
@ -0,0 +1,43 @@
|
||||||
|
#include "logic.h"
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
void Logic::OnBallOwned()
|
||||||
|
{
|
||||||
|
Wireless* ourWireless = parent->GetModule<Wireless>(IO_WIRELESS_MAIN);
|
||||||
|
|
||||||
|
//ourWireless->Send(WIRELESS_CODE);
|
||||||
|
//ourWireless->Send();
|
||||||
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
void Logic::OnBallLost()
|
||||||
|
{
|
||||||
|
Wireless* ourWireless = parent->GetModule<Wireless>(IO_WIRELESS_MAIN);
|
||||||
|
|
||||||
|
//ourWireless->Send(WIRELESS_CODE);
|
||||||
|
//ourWireless->Send();
|
||||||
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
void Logic::Update()
|
||||||
|
{
|
||||||
|
// We want to use a navigator
|
||||||
|
Navigator* ourNavigator = parent->GetModule<Navigator>(IO_NAVIGATOR_MAIN);
|
||||||
|
|
||||||
|
// is Keeper?
|
||||||
|
if(isKeeper) {
|
||||||
|
// turn around al little bit...
|
||||||
|
if((status == STATUS_KEEPER_TURN_LEFT && ourNavigator->AngleReached()) ||
|
||||||
|
(status != STATUS_KEEPER_TURN_LEFT && status != STATUS_KEEPER_TURN_RIGHT)) {
|
||||||
|
status = STATUS_KEEPER_TURN_RIGHT;
|
||||||
|
ourNavigator->RotateTo(315,200);
|
||||||
|
}
|
||||||
|
else if(status == STATUS_KEEPER_TURN_RIGHT && ourNavigator->AngleReached()) {
|
||||||
|
status = STATUS_KEEPER_TURN_LEFT;
|
||||||
|
ourNavigator->RotateTo(45, 200);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else { // is Player?
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
58
source/Concept/Framework/modules/logic/logic.h
Executable file
58
source/Concept/Framework/modules/logic/logic.h
Executable file
|
@ -0,0 +1,58 @@
|
||||||
|
#ifndef _LOGIC_H
|
||||||
|
#define _LOGIC_H
|
||||||
|
|
||||||
|
#include "../../stdafx.h"
|
||||||
|
|
||||||
|
#define STATUS_KEEPER_TURN_RIGHT 1
|
||||||
|
#define STATUS_KEEPER_TURN_LEFT 2
|
||||||
|
|
||||||
|
class Logic : public IO_Module
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Logic()
|
||||||
|
{
|
||||||
|
this->parent = NULL;
|
||||||
|
this->moduleId = 0;
|
||||||
|
this->isKeeper = false;
|
||||||
|
this->status = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
Logic(uint32 logicId)
|
||||||
|
{
|
||||||
|
this->parent = NULL;
|
||||||
|
this->moduleId = logicId;
|
||||||
|
this->isKeeper = false;
|
||||||
|
this->status = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
bool isKeeper;
|
||||||
|
uint8 status;
|
||||||
|
|
||||||
|
void OnBallOwned();
|
||||||
|
void OnBallLost();
|
||||||
|
|
||||||
|
public:
|
||||||
|
void Update();
|
||||||
|
|
||||||
|
bool IsKeeper()
|
||||||
|
{
|
||||||
|
return isKeeper;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool IsAttacker()
|
||||||
|
{
|
||||||
|
return !isKeeper;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetKeeper(bool newStatus) {
|
||||||
|
this->isKeeper = newStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool HasBall()
|
||||||
|
{
|
||||||
|
//fill me!
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
1
source/Concept/Framework/modules/wireless.c
Executable file
1
source/Concept/Framework/modules/wireless.c
Executable file
|
@ -0,0 +1 @@
|
||||||
|
#include "wireless.h"
|
58
source/Concept/Framework/modules/wireless.h
Executable file
58
source/Concept/Framework/modules/wireless.h
Executable file
|
@ -0,0 +1,58 @@
|
||||||
|
#ifndef _WIRELESS_H
|
||||||
|
#define _WIRELESS_H
|
||||||
|
|
||||||
|
#include "../../stdafx.h"
|
||||||
|
|
||||||
|
class Wireless : public IO_Module
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Wireless()
|
||||||
|
{
|
||||||
|
this->parent = NULL;
|
||||||
|
this->moduleId = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
Wireless(uint32 wirelessId)
|
||||||
|
{
|
||||||
|
this->parent = NULL;
|
||||||
|
this->moduleId = wirelessId;
|
||||||
|
|
||||||
|
switch(wirelessId)
|
||||||
|
{
|
||||||
|
case IO_WIRELESS_MAIN:
|
||||||
|
uart_init(51); // 19200 Baud at 16MHz Atmel
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
uint8 transmitPower;
|
||||||
|
public:
|
||||||
|
void SetTransmitPower(uint8 newTransmitPower)
|
||||||
|
{
|
||||||
|
this->transmitPower = newTransmitPower;
|
||||||
|
|
||||||
|
char buffer[12];
|
||||||
|
ltoa(this->transmitPower-1, buffer, 10);
|
||||||
|
uart_puts(buffer);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Send(char* message)
|
||||||
|
{
|
||||||
|
uart_puts(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Send(uint8 message)
|
||||||
|
{
|
||||||
|
uart_putc(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
int16 Recieve()
|
||||||
|
{
|
||||||
|
return uart_getc();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
Reference in a new issue