First version

Dependencies:   mbed EthernetInterface mbed-rto

Committer:
KlaasGovaerts
Date:
Wed May 09 14:11:26 2018 +0000
Revision:
58:738f026cf667
Parent:
55:4e06cfb6d010
Child:
67:7951d11432f8
Added destructor

Who changed what in which revision?

UserRevisionLine numberNew contents of line
albireo987 6:36158325f7b0 1 #ifndef LEDDRIVER_H
albireo987 6:36158325f7b0 2 #define LEDDRIVER_H
albireo987 6:36158325f7b0 3
albireo987 6:36158325f7b0 4 #include "copy.h"
albireo987 6:36158325f7b0 5 #include "mbed.h"
albireo987 26:4c673da1a3ae 6 #include "rtos.h"
albireo987 6:36158325f7b0 7
albireo987 6:36158325f7b0 8 class LEDDriver
albireo987 6:36158325f7b0 9 {
albireo987 6:36158325f7b0 10 private:
albireo987 8:a987e04734dd 11
KlaasGovaerts 47:8fe84f455571 12 int messageList[8];
KlaasGovaerts 54:4274186bf584 13 int codedMessage0[25];
KlaasGovaerts 54:4274186bf584 14 int codedMessage1[25];
KlaasGovaerts 54:4274186bf584 15 int codedMessage2[25];
KlaasGovaerts 54:4274186bf584 16 int codedMessage3[25];
KlaasGovaerts 54:4274186bf584 17 int codedMessage4[25];
albireo987 9:c800045806f0 18 int directions[8];
albireo987 26:4c673da1a3ae 19 Queue<int,8>* queue;
KlaasGovaerts 48:c5cd73d93045 20 DigitalOut *leds[8];
KlaasGovaerts 45:2d877f01ca7b 21 int currentLocation;
albireo987 6:36158325f7b0 22
albireo987 26:4c673da1a3ae 23 /**prep for eventual multithreading
albireo987 26:4c673da1a3ae 24 *methode om nieuwe richtingen van de receiver klasse te ontvangen
albireo987 26:4c673da1a3ae 25 *@params aantal leds die een nieuw bericht moeten krijgen
albireo987 26:4c673da1a3ae 26 */
KlaasGovaerts 55:4e06cfb6d010 27 void poll(int numberOfLeds);
albireo987 38:47c075a354b5 28
albireo987 38:47c075a354b5 29 /**
albireo987 38:47c075a354b5 30 *callback methode voor de ticker
albireo987 38:47c075a354b5 31 *@params de led om aan te sturen
albireo987 38:47c075a354b5 32 */
albireo987 38:47c075a354b5 33 void sendData();
albireo987 6:36158325f7b0 34
KlaasGovaerts 45:2d877f01ca7b 35 void setLEDS(int j);
KlaasGovaerts 45:2d877f01ca7b 36
albireo987 10:7871aeacea08 37 public:
KlaasGovaerts 55:4e06cfb6d010 38
albireo987 10:7871aeacea08 39 /**
albireo987 10:7871aeacea08 40 *methode dat alle leds aanstuurt
albireo987 10:7871aeacea08 41 *@params aantal leds aan te sturen
albireo987 10:7871aeacea08 42 */
albireo987 6:36158325f7b0 43 void drive(int numberOfLeds);
albireo987 10:7871aeacea08 44
albireo987 10:7871aeacea08 45 /**
albireo987 10:7871aeacea08 46 *constructor voor een driver object
albireo987 32:537005b4a065 47 *@params de queue met de waarden die een richting aanduiden
albireo987 10:7871aeacea08 48 */
albireo987 26:4c673da1a3ae 49 LEDDriver(Queue<int,8>* queue);
KlaasGovaerts 44:ffac07bff0d8 50
KlaasGovaerts 58:738f026cf667 51 ~LEDDriver();
KlaasGovaerts 58:738f026cf667 52
KlaasGovaerts 44:ffac07bff0d8 53 void drive8leds();
albireo987 6:36158325f7b0 54
KlaasGovaerts 45:2d877f01ca7b 55 void initArrays();
KlaasGovaerts 45:2d877f01ca7b 56 };
albireo987 6:36158325f7b0 57
albireo987 6:36158325f7b0 58 #endif