Exemplo n.º 1
0
VOID tcpServerWorkTask(
		int sFdServer, /* server's socket fd */
		char * address, /* client's socket address */
		u_short port /* client's socket port */
) {
	char request[256];
	int row = 2;
	int column = 2;
	char stringBuffer[80];
//	struct request request; /* request/message from client */
	int nRead; /* number of bytes read */
	static char replyMsg[] = "Server received your message";
	/* read client request, display message */
	static char welcomeMsg[] = "Dominik und Barthman heissen sie herzlich willkommen auf 5555";
/*	if ((write(sFdServer, welcomeMsg, strlen(welcomeMsg))) == ERROR) {
		//error
	}*/
	while ((nRead = fioRdString(sFdServer, (char *) &request, sizeof(request))) > 0) {

		if (strcmp(request,"Request\r")==0) {
			
			if(localMode==false){
				
								
				sprintf(stringBuffer, "Ready\r\n");
				
				myStateMachine->sendEvent("getStatus");
	
			}else{
				printf("in wrong state, first change to chainIdle");
				sprintf(stringBuffer, "in wrong state, first change to chainIdle \r");
			}
		}
		
		else if (request[0]=='R' && request[1]=='i' && request[2]=='g' && request[3]=='h' && request[4]=='t' && request[5]==' '){
			for(int i=1;i<20;i++){
				request[i-6]=request[i];
			}
			printf("TCP SERVER %s",request);
			sprintf(stringBuffer, "IP Address of the right neighbor is %s \r",request);
			
			myTCPClient->init(request);
		}

		else{
			static char errorMsg[] = "falsche Eingabe\n\r";
//			write(sFdServer, errorMsg, strlen(errorMsg));
			sprintf(stringBuffer, "");
		}

/*		if(write(sFdServer, stringBuffer ,strlen(stringBuffer))==ERROR){
			//error
		}
*/
	}
	if (nRead == ERROR) /* error from read() */
		perror("read");
	close(sFdServer); /* close server socket connection */
}
Exemplo n.º 2
0
tpmode(int port)
{
    char ttyName[16];
    char chrStr[80],replyStr[80];
    int len,i;

    sprintf(ttyName,FpgaFormatStr,port);
    printf("opening dev: '%s'\n",ttyName);
    sfd = open(ttyName, O_RDWR, 0);
    if(sfd < 1) 
    {
       perror("open:");
       printf("failed to open: '%s'\n",ttyName);
       return(-1);
    }
    sprintf(ttyName,FpgaFormatStr,1);
    sprintf(ttyName,FpgaFormatStr,2);
    sprintf(ttyName,FpgaFormatStr,3);
    while(1)
    {
    printf("string to issue: ");
    fioRdString (STD_IN, &chrStr, 80);
    printf("sending: '%s'\n",chrStr);
    len = strlen(chrStr);
    for(i=0;i<len;i++)  
        printf("char: '%c', 0x%x\n",chrStr[i],chrStr[i]);
    printf("strlen: %d\n",len);
    chrStr[len] = 13; 
    chrStr[len+1] = 10;
    chrStr[len+2] = 0;
    write(sfd,chrStr,len+2);
    fioRdString(sfd,replyStr,80);
    len = strlen(replyStr);
    taskDelay(calcSysClkTicks(500));  /* 1/2 sec, taskDelay(30); */
    printf("reply: %d bytes  '%s' \n",len,replyStr);
    }
}
Exemplo n.º 3
0
VOID tcpServerWorkTask(int sFd, /* server's socket file descriptor */
char * address, /* client's socket address */
u_short port /* client's socket port */
) 
{	
	char clientRequest[200];
	//struct request clientRequest; /* request/message from client */
	int nRead; /* number of bytes read */
	static char replyMsg[] = "Gruess Gott in Vorarlberg\n";
	float potiVolt;

	/* read client request, display message */
	
	writeToDisplay (14, 2, "tcpServerWorkTask" );
	
	write(sFd, replyMsg, sizeof(replyMsg));
	
	while ((nRead = fioRdString(sFd, (char *) &clientRequest, sizeof(clientRequest)))> 0) {
		
		//printf("MESSAGE FROM CLIENT (Internet Address %s, port %d):\n%s\n",address, port, clientRequest.message);
		char output[64];
		switch (clientRequest[0]) {
		case '1':
			sprintf(output,"Poti Dezimal = %d               ", globalPoti);
			write(sFd, output, 64);
			break;
		case '2':
			potiVolt=(float)(globalPoti*5)/4095;
			sprintf(output,"Poti Volt = %f        ", potiVolt);
			write(sFd, output, 64);
			break;
		case '3':
			sprintf(output,"Poti Hex = %x             ", globalPoti);
			write(sFd, output, 64);
			break;
		default:
			write(sFd, "Wrong input", 11);
		}

	}
	
	
	
	if (nRead == ERROR) /* error from read() */
		perror("read");

	close(sFd); /* close server socket connection */
}
Exemplo n.º 4
0
void usrDemo (void)

    {
    char string [40];

    printf ("VxWorks (for %s) version %s.\n", sysModel (), vxWorksVersion);
    printf ("Kernel: %s.\n", kernelVersion ());
    printf ("Made on %s.\n", creationDate);

    FOREVER
        {
        printf ("\nThis is a test.  Type something: ");
        fioRdString (STD_IN, string, sizeof (string));
	printf ("\nYou typed \"%s\".\n", string);

	if (strcmp (string, "0") == 0)
	    memShow (0);

	if (strcmp (string, "1") == 0)
	    memShow (1);
        }
    }
Exemplo n.º 5
0
VOID tcpServerWorkTask(int sFd, /* server's socket file descriptor */
char * address, /* client's socket address */
u_short port /* client's socket port */
) 
{	
	char clientRequest[200];
	//struct request clientRequest; /* request/message from client */
	int nRead; /* number of bytes read */
	static char replyMsg[] = "Gruess Gott in Vorarlberg\n";
	

	/* read client request, display message */
	/*
	writeToDisplay (14, 2, "tcpServerWorkTask" );
	*/
	write(sFd, replyMsg, sizeof(replyMsg));
	
	while ((nRead = fioRdString(sFd, (char *) &clientRequest, sizeof(clientRequest)))> 0) {
		
		//printf("MESSAGE FROM CLIENT (Internet Address %s, port %d):\n%s\n",address, port, clientRequest.message);
		
			
		switch(clientRequest[0]){
		case '1': printf("**Start Key Pressed \n"); //start
		myStateMachine->sendEvent("startKey");
		sprintf(replyMsg,"Start Key Pressed              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case '2': printf("**Direction: Left\n"); //left
		myStateMachine->sendEvent("leftKey");
		sprintf(replyMsg,"Direction = left              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case '3': printf("**Direction: Right\n"); //rigth
		myStateMachine->sendEvent("rightKey");
		sprintf(replyMsg,"Direction = right              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case '4': printf("**Speed Increased\n"); //increase
		myStateMachine->sendEvent("incKey");
		sprintf(replyMsg,"Speed Increased              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case '5': printf("**Speed Decreased\n");
		myStateMachine->sendEvent("decKey");
		sprintf(replyMsg,"Speed Decreased              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case 'A': printf("**Local Operation Mode selected\n"); 
		myStateMachine->sendEvent("modeLomKey");
		sprintf(replyMsg,"Mode = Local Operation Mode              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case 'B': printf("**Chain Operation Mode selected\n"); 
		myStateMachine->sendEvent("modeComKey");
		sprintf(replyMsg,"Mode = Chain Operation Mode              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case 'F': printf("**Request received\n"); 
		myStateMachine->sendEvent("RequestUpdate");
		sprintf(replyMsg,"Request Received              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case 'E': printf("**Ready received\n");
		myStateMachine->sendEvent("getReady");
		sprintf(replyMsg,"Ready received              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case 'D': printf("**Wait received\n");
		myStateMachine->sendEvent("getWait");
		sprintf(replyMsg,"Wait received              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		
		case 'C': printf("**Release received\n");
		myStateMachine->sendEvent("getRelease");
		sprintf(replyMsg,"Release received              \n");
		write(sFd, replyMsg, sizeof(replyMsg));
		break;
		}

	}
	
	
	
	if (nRead == ERROR) /* error from read() */
		perror("read");

	close(sFd); /* close server socket connection */
}