DSOS Sensors

Dependencies:   EthernetInterface SensorsTointegrate mbed-rtos mbed

Fork of MainTaskGus by Roberto Herrera

Committer:
Jorge_Beltran
Date:
Mon Dec 07 01:52:10 2015 +0000
Revision:
1:f3619e6e9e89
Parent:
0:5db5c980e717
DSOS Sensors

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RoHe 0:5db5c980e717 1 /*
RoHe 0:5db5c980e717 2
RoHe 0:5db5c980e717 3 Main.cpp
RoHe 0:5db5c980e717 4
RoHe 0:5db5c980e717 5 Last update by RoHe 16/11/2015
RoHe 0:5db5c980e717 6
RoHe 0:5db5c980e717 7 */
RoHe 0:5db5c980e717 8 #include <string.h>
RoHe 0:5db5c980e717 9 #include "mbed.h"
RoHe 0:5db5c980e717 10 #include "EthernetInterface.h"
RoHe 0:5db5c980e717 11 #include "rtos.h"
Jorge_Beltran 1:f3619e6e9e89 12 #include "Sensors.h"
RoHe 0:5db5c980e717 13 #include "Ether.h"
RoHe 0:5db5c980e717 14 #include "Initial.h"
RoHe 0:5db5c980e717 15 #include "Threads.cpp"
RoHe 0:5db5c980e717 16 #include "StringManager.h"
RoHe 0:5db5c980e717 17
RoHe 0:5db5c980e717 18 int main()
RoHe 0:5db5c980e717 19 {
Jorge_Beltran 1:f3619e6e9e89 20
Jorge_Beltran 1:f3619e6e9e89 21
RoHe 0:5db5c980e717 22 /*////////////////////////////////////
RoHe 0:5db5c980e717 23 Initialization of the outports
RoHe 0:5db5c980e717 24
RoHe 0:5db5c980e717 25 Comments:
RoHe 0:5db5c980e717 26 -Inicialize all the output in zero
RoHe 0:5db5c980e717 27 -It has Pull - up
RoHe 0:5db5c980e717 28 */
RoHe 0:5db5c980e717 29 ledRED=1; // it has pull-up
RoHe 0:5db5c980e717 30 ledGREEN=1;
RoHe 0:5db5c980e717 31 ledBLUE=1;
RoHe 0:5db5c980e717 32
RoHe 0:5db5c980e717 33
RoHe 0:5db5c980e717 34 /*////////////////////////////////////
RoHe 0:5db5c980e717 35 SET Initial configuration and welcome message
RoHe 0:5db5c980e717 36 */
RoHe 0:5db5c980e717 37 pc.baud(115200);
RoHe 0:5db5c980e717 38 pc.printf("Hello World from TCP Client-Server RoHE Main TASK GUS integrate YORCH1.\n\r");
RoHe 0:5db5c980e717 39
RoHe 0:5db5c980e717 40
RoHe 0:5db5c980e717 41 /*//////////////////////////////////
RoHe 0:5db5c980e717 42 Declares all necessary CLASSES
RoHe 0:5db5c980e717 43 */
RoHe 0:5db5c980e717 44
Jorge_Beltran 1:f3619e6e9e89 45 /*EthernetInterface eth;
RoHe 0:5db5c980e717 46 eth.init(); //Use DHCP
Jorge_Beltran 1:f3619e6e9e89 47 eth.connect();*/
RoHe 0:5db5c980e717 48
RoHe 0:5db5c980e717 49
RoHe 0:5db5c980e717 50 /*///////////////////////////////////
RoHe 0:5db5c980e717 51 Declares all necessary THREADS
RoHe 0:5db5c980e717 52 */
Jorge_Beltran 1:f3619e6e9e89 53 /*Thread thread1(led_thread);
Jorge_Beltran 1:f3619e6e9e89 54 Thread thread2(messsageFromClient);*/
RoHe 0:5db5c980e717 55
RoHe 0:5db5c980e717 56 /*////////////////////////////////////
RoHe 0:5db5c980e717 57 Declares all necessary INTERRUPTIONS
RoHe 0:5db5c980e717 58 */
Jorge_Beltran 1:f3619e6e9e89 59 /*sw2.fall(&sw2_press);*/
RoHe 0:5db5c980e717 60
RoHe 0:5db5c980e717 61 //////////////////////////////////////////////////////APPLICATION /////////////////////////////////////////////////////////
RoHe 0:5db5c980e717 62
RoHe 0:5db5c980e717 63
Jorge_Beltran 1:f3619e6e9e89 64 /*s_myIP = eth.getIPAddress();
RoHe 0:5db5c980e717 65 pc.printf("\nClient IP Address is %s\r", s_myIP);
RoHe 0:5db5c980e717 66 pc.printf("\nClient IP MAC address is %s\r", eth.getMACAddress);
RoHe 0:5db5c980e717 67 pc.printf("\nClient IP Gateway is %s\r", eth.getGateway());
RoHe 0:5db5c980e717 68 pc.printf("\nClient IP network mask is %s\n\r", eth.getNetworkMask());
Jorge_Beltran 1:f3619e6e9e89 69
RoHe 0:5db5c980e717 70 CONSTRAINS:
RoHe 0:5db5c980e717 71 -No se puede poner un serial print el los threads ....
RoHe 0:5db5c980e717 72 -se tiene que abrir y cerrar las conecciones par que pueda leer nuevos mensajes
RoHe 0:5db5c980e717 73 -se puede leer mensajes si no se cierra el socket pero la conexion se queda abierta
RoHe 0:5db5c980e717 74 y no puede recibir mas mensajes .. se saco el forpara hacerlo una sola vez y no se cierra la conexion
RoHe 0:5db5c980e717 75
RoHe 0:5db5c980e717 76 */
RoHe 0:5db5c980e717 77
RoHe 0:5db5c980e717 78
RoHe 0:5db5c980e717 79 /*
RoHe 0:5db5c980e717 80 // Connect to Server2
RoHe 0:5db5c980e717 81 (socketTCP.connect(ECHO_SERVER_ADDRESS2, ECHO_SERVER_PORT2) < 0) {
RoHe 0:5db5c980e717 82 pc.printf("Unable to connect to (%s) on port (%d)\n\r", ECHO_SERVER_ADDRESS2, ECHO_SERVER_PORT2);
RoHe 0:5db5c980e717 83 }
RoHe 0:5db5c980e717 84 _isConnectedServer2=true;
RoHe 0:5db5c980e717 85 pc.printf("Connected to Server at %s\n\r",ECHO_SERVER_ADDRESS2);
RoHe 0:5db5c980e717 86 */
RoHe 0:5db5c980e717 87
RoHe 0:5db5c980e717 88
RoHe 0:5db5c980e717 89 while(true) {
Jorge_Beltran 1:f3619e6e9e89 90
Jorge_Beltran 1:f3619e6e9e89 91
Jorge_Beltran 1:f3619e6e9e89 92
RoHe 0:5db5c980e717 93 // Connect to Server1
RoHe 0:5db5c980e717 94 //TODO: try to connect to both servers
RoHe 0:5db5c980e717 95 //TODO: only try 5 times after ti server1 goes down
RoHe 0:5db5c980e717 96 //TODO: cual es la diferencia entre recieved_all y recieved
RoHe 0:5db5c980e717 97 //TOTRY: que valor regresa cuando hace el connect???
RoHe 0:5db5c980e717 98
RoHe 0:5db5c980e717 99 //QUESTION: que son los numero que aparecen despues de los dos puntos,
RoHe 0:5db5c980e717 100 //parece ser uqe es el numero que noceciones que lleva acabo 192.168.1.81:49160
RoHe 0:5db5c980e717 101 //NOSIRVE: si se conecta los dos micros con el programa de TCP Server4 y se les pide un reply
RoHe 0:5db5c980e717 102 //los micros no contestan y para terminarla si pides dos veces un reply se queda colgado ..
RoHe 0:5db5c980e717 103 //ACCOMPLISH: los colores de los leds ya responen de acuerdo a la conexion
RoHe 0:5db5c980e717 104
RoHe 0:5db5c980e717 105
RoHe 0:5db5c980e717 106 }// END while
Jorge_Beltran 1:f3619e6e9e89 107 //eth.disconnect();
RoHe 0:5db5c980e717 108
RoHe 0:5db5c980e717 109
RoHe 0:5db5c980e717 110
RoHe 0:5db5c980e717 111 }