Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Diff: Library/StateMachine.h
- Revision:
- 1:7bf9b6c007a1
- Parent:
- 0:7cf5bf7e9486
--- a/Library/StateMachine.h Fri Mar 23 13:07:58 2018 +0000
+++ b/Library/StateMachine.h Fri Mar 23 15:40:09 2018 +0000
@@ -12,6 +12,11 @@
#include "Controller.h"
#include "IRSensor.h"
+#include <deque>
+#include "Task.h"
+#include "TaskWait.h"
+#include "TaskMoveTo.h"
+
/**
* This class implements a simple state machine for a mobile robot.
* It allows to move the robot forward, and to turn left or right,
@@ -28,7 +33,7 @@
static const int TURN_RIGHT = 3;
static const int SLOWING_DOWN = 4;
- StateMachine(Controller& controller, DigitalOut& enableMotorDriver, DigitalOut& led0, DigitalOut& led1, DigitalOut& led2, DigitalOut& led3, DigitalOut& led4, DigitalOut& led5, DigitalIn& button, IRSensor& irSensor0, IRSensor& irSensor1, IRSensor& irSensor2, IRSensor& irSensor3, IRSensor& irSensor4, IRSensor& irSensor5);
+ StateMachine(Controller& controller, DigitalOut& enableMotorDriver, DigitalOut& led0, DigitalOut& led1, DigitalOut& led2, DigitalOut& led3, DigitalOut& led4, DigitalOut& led5, DigitalIn& button, IRSensor& irSensor0, IRSensor& irSensor1, IRSensor& irSensor2, IRSensor& irSensor3, IRSensor& irSensor4, IRSensor& irSensor5,DigitalOut& led);
virtual ~StateMachine();
int getState();
@@ -41,6 +46,7 @@
Controller& controller;
DigitalOut& enableMotorDriver;
+ DigitalOut& led;
DigitalOut& led0;
DigitalOut& led1;
DigitalOut& led2;
@@ -59,6 +65,8 @@
int buttonBefore;
Ticker ticker;
+ deque<Task*> taskList;
+
void run();
};