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: EthernetInterface mbed-rto mbed
Fork of ProjectVLC by
Revision 5:0413d42377d1, committed 2018-03-28
- Comitter:
- KlaasGovaerts
- Date:
- Wed Mar 28 13:28:14 2018 +0000
- Parent:
- 4:0d013b7e4dea
- Child:
- 6:9903a0906a72
- Commit message:
- Added TCPlistener class
Changed in this revision
--- a/Receiver.cpp Wed Mar 28 12:25:14 2018 +0000
+++ b/Receiver.cpp Wed Mar 28 13:28:14 2018 +0000
@@ -6,33 +6,22 @@
}
-void Receiver::run(){
- //Recieve Packet.
+void Receiver::init(){
char command[512];
-
- bool inCommand=true;
-
-
+ listener.receivePacket(command,sizeof(command));
char *ID=strtok(command,",");
char *direction=strtok(NULL," ");
while((ID!=NULL)&&(direction!=NULL)){
-
-
- if(){
-
- } else {
-
- }
-
-
int IDNumber=atoi(ID);
int directionNumber=directionToNumber(direction);
- if((IDNumber>=0)&&(IDNumber<=11)&&(directionNumber>=0)&&(directionNumber<=3)){
- LED[IDNumber]=
+ if((IDNumber>=0)&&(IDNumber<=11)&&(directionNumber>=-1)&&(directionNumber<=3)){
+ lock.lock();
+ LED[IDNumber]=directionNumber;
+ lock.unlock();
}
- inCommand=false;
+ ID=strtok(NULL,",");
+ direction=strtok(NULL," ");
}
-
}
int Receiver::directionToNumber(char* direction){
@@ -46,12 +35,4 @@
return 3;
else
return -1;
-}
-
-
-/*
-in
-
-int Receiver::directionToNumber(char *direction){
-
-}*/
\ No newline at end of file
+}
\ No newline at end of file
--- a/Receiver.h Wed Mar 28 12:25:14 2018 +0000
+++ b/Receiver.h Wed Mar 28 13:28:14 2018 +0000
@@ -7,8 +7,9 @@
int* LED;
Mutex* lock;
int directionToNumber(char* direction);
+ TCPlistener listener;
public:
Receiver(int* LED,Mutex* lock);
- void run();
+ void init();
};
#endif
\ No newline at end of file
--- a/TCPconnection.h Wed Mar 28 12:25:14 2018 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ - //Work in progress - /* - EthernetInterface eth; - UDPSocket server; - Endpoint client; - */ \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/TCPlistener.cpp Wed Mar 28 13:28:14 2018 +0000
@@ -0,0 +1,15 @@
+#include "TCPlistener.h"
+
+TCPlistener::TCPlistener(){
+ char ip[]="192.168.0.253";
+ char mask[]="255.255.255.0";
+ char gateway[]="192.168.0.254";
+ eth.init(ip,mask,gateway);
+ eth.connect();
+ server.bind(4000);
+}
+void TCPlistener::receivePacket(char *contents,int size){
+ int n = server.recv(contents, size);
+ contents[n] = '\0';
+ printf("Segment ontvangen van %s:%i met inhoud \"%s\"\r\n", client.get_address(),client.get_port(),contents);
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/TCPlistener.h Wed Mar 28 13:28:14 2018 +0000
@@ -0,0 +1,15 @@
+#include "mbed.h"
+#include "EthernetInterface.h"
+
+#ifndef TCPLISTENER_H
+#define TCPLISTENER_H
+ class TCPlistener{
+ private:
+ EthernetInterface eth;
+ TCPSocket server;
+ Endpoint client;
+ public:
+ void receivePacket(char *contents,int size);
+ TCPlistener();
+ };
+#endif
\ No newline at end of file
--- a/main.cpp Wed Mar 28 12:25:14 2018 +0000
+++ b/main.cpp Wed Mar 28 13:28:14 2018 +0000
@@ -6,13 +6,15 @@
Mutex* lock=new Mutex();
int LED[12];
for(int i=0;i<12;i++){
- LED[i]=0;
+ LED[i]=-1;
}
+
+ /*
Thread receiverThread;
Receiver receiver(LED,lock);
receiverThread.start(receiver.run);
-
+ */
//std::thread receiverThread(&Receiver::run, &receiver);
