Eduardo Munoz Gutierrez / Mbed OS mbed-os-micromouse

Dependencies:   Motor

Committer:
edmugu
Date:
Tue Mar 26 03:27:14 2019 +0000
Revision:
0:7676da98b5c1
Initial Commit:; Basic functionality checks passed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
edmugu 0:7676da98b5c1 1
edmugu 0:7676da98b5c1 2 #ifndef IR_sensors_H
edmugu 0:7676da98b5c1 3 #define IR_sensors_H
edmugu 0:7676da98b5c1 4
edmugu 0:7676da98b5c1 5 #include "mbed.h"
edmugu 0:7676da98b5c1 6 enum State {left = 0b100,
edmugu 0:7676da98b5c1 7 centerleft = 0b110,
edmugu 0:7676da98b5c1 8 center = 0b010,
edmugu 0:7676da98b5c1 9 centerright = 0b011,
edmugu 0:7676da98b5c1 10 right= 0b001,
edmugu 0:7676da98b5c1 11 undef0 = 0b000,
edmugu 0:7676da98b5c1 12 undef1 = 0b111,
edmugu 0:7676da98b5c1 13 undefx = 0b101
edmugu 0:7676da98b5c1 14 };
edmugu 0:7676da98b5c1 15
edmugu 0:7676da98b5c1 16 class IR_sensors {
edmugu 0:7676da98b5c1 17 public:
edmugu 0:7676da98b5c1 18 IR_sensors(
edmugu 0:7676da98b5c1 19 PinName pinleft,
edmugu 0:7676da98b5c1 20 PinName pincenter,
edmugu 0:7676da98b5c1 21 PinName pinright,
edmugu 0:7676da98b5c1 22 PinName ledleft,
edmugu 0:7676da98b5c1 23 PinName ledcenter,
edmugu 0:7676da98b5c1 24 PinName ledright
edmugu 0:7676da98b5c1 25 );
edmugu 0:7676da98b5c1 26
edmugu 0:7676da98b5c1 27 State state(void);
edmugu 0:7676da98b5c1 28 protected:
edmugu 0:7676da98b5c1 29 DigitalIn _pinleft;
edmugu 0:7676da98b5c1 30 DigitalIn _pincenter;
edmugu 0:7676da98b5c1 31 DigitalIn _pinright;
edmugu 0:7676da98b5c1 32 DigitalOut _ledleft;
edmugu 0:7676da98b5c1 33 DigitalOut _ledcenter;
edmugu 0:7676da98b5c1 34 DigitalOut _ledright;
edmugu 0:7676da98b5c1 35 State _state;
edmugu 0:7676da98b5c1 36
edmugu 0:7676da98b5c1 37
edmugu 0:7676da98b5c1 38 };
edmugu 0:7676da98b5c1 39
edmugu 0:7676da98b5c1 40
edmugu 0:7676da98b5c1 41 #endif