![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
First version
Dependencies: mbed EthernetInterface mbed-rto
Interpreter.cpp@74:8c0068ed7c1e, 2018-05-15 (annotated)
- Committer:
- KlaasGovaerts
- Date:
- Tue May 15 21:34:09 2018 +0000
- Revision:
- 74:8c0068ed7c1e
- Parent:
- 59:237e32fd3555
Probeersel (werkt niet).
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
KlaasGovaerts | 18:5ee34e60a31d | 1 | #include "Interpreter.h" |
KlaasGovaerts | 18:5ee34e60a31d | 2 | |
KlaasGovaerts | 24:bf62c46acb3e | 3 | |
KlaasGovaerts | 24:bf62c46acb3e | 4 | |
KlaasGovaerts | 74:8c0068ed7c1e | 5 | Interpreter::Interpreter(Queue<QueueMessage,1>* queue){ |
KlaasGovaerts | 24:bf62c46acb3e | 6 | Interpreter::queue=queue; |
KlaasGovaerts | 18:5ee34e60a31d | 7 | } |
KlaasGovaerts | 18:5ee34e60a31d | 8 | |
KlaasGovaerts | 18:5ee34e60a31d | 9 | void Interpreter::executeCommand(char* command){ |
KlaasGovaerts | 24:bf62c46acb3e | 10 | for(int i=0;i<8;i++){ |
KlaasGovaerts | 52:45207965e160 | 11 | LED[i]=4; |
KlaasGovaerts | 52:45207965e160 | 12 | } //Set all default on 4 |
KlaasGovaerts | 24:bf62c46acb3e | 13 | |
KlaasGovaerts | 20:fe6a58e84929 | 14 | char *ID=strtok(command,"-"); |
KlaasGovaerts | 18:5ee34e60a31d | 15 | char *direction=strtok(NULL," "); |
KlaasGovaerts | 18:5ee34e60a31d | 16 | while((ID!=NULL)&&(direction!=NULL)){ |
KlaasGovaerts | 18:5ee34e60a31d | 17 | int IDNumber=atoi(ID); |
KlaasGovaerts | 18:5ee34e60a31d | 18 | int directionNumber=directionToNumber(direction); |
KlaasGovaerts | 52:45207965e160 | 19 | if((IDNumber>=0)&&(IDNumber<=11)&&(directionNumber>=0)&&(directionNumber<=4)){ |
KlaasGovaerts | 18:5ee34e60a31d | 20 | LED[IDNumber]=directionNumber; |
KlaasGovaerts | 18:5ee34e60a31d | 21 | } |
KlaasGovaerts | 20:fe6a58e84929 | 22 | ID=strtok(NULL,"-"); |
KlaasGovaerts | 18:5ee34e60a31d | 23 | direction=strtok(NULL," "); |
KlaasGovaerts | 18:5ee34e60a31d | 24 | } |
KlaasGovaerts | 24:bf62c46acb3e | 25 | |
KlaasGovaerts | 74:8c0068ed7c1e | 26 | QueueMessage *message=new QueueMessage(); |
KlaasGovaerts | 74:8c0068ed7c1e | 27 | memcpy(message->getArray(),LED,sizeof(LED)); |
KlaasGovaerts | 74:8c0068ed7c1e | 28 | printf("Reached this code\r\n"); |
KlaasGovaerts | 74:8c0068ed7c1e | 29 | queue->put(message); |
KlaasGovaerts | 24:bf62c46acb3e | 30 | |
KlaasGovaerts | 24:bf62c46acb3e | 31 | for(int i=0;i<8;i++){ |
albireo987 | 38:47c075a354b5 | 32 | printf("LED %i, richting: %i\r\n",i,LED[i]); |
KlaasGovaerts | 24:bf62c46acb3e | 33 | } |
KlaasGovaerts | 18:5ee34e60a31d | 34 | } |
KlaasGovaerts | 18:5ee34e60a31d | 35 | |
KlaasGovaerts | 18:5ee34e60a31d | 36 | int Interpreter::directionToNumber(char* direction){ |
KlaasGovaerts | 20:fe6a58e84929 | 37 | if(strcmp(direction,"left")==0) |
KlaasGovaerts | 18:5ee34e60a31d | 38 | return 0; |
KlaasGovaerts | 20:fe6a58e84929 | 39 | else if(strcmp(direction,"right")==0) |
KlaasGovaerts | 18:5ee34e60a31d | 40 | return 1; |
KlaasGovaerts | 20:fe6a58e84929 | 41 | else if(strcmp(direction,"up")==0) |
KlaasGovaerts | 18:5ee34e60a31d | 42 | return 2; |
KlaasGovaerts | 20:fe6a58e84929 | 43 | else if(strcmp(direction,"down")==0) |
KlaasGovaerts | 18:5ee34e60a31d | 44 | return 3; |
KlaasGovaerts | 18:5ee34e60a31d | 45 | else |
KlaasGovaerts | 52:45207965e160 | 46 | return 4; |
KlaasGovaerts | 18:5ee34e60a31d | 47 | } |