当前位置: 首页>>代码示例>>C++>>正文


C++ Comunicacao类代码示例

本文整理汇总了C++中Comunicacao的典型用法代码示例。如果您正苦于以下问题:C++ Comunicacao类的具体用法?C++ Comunicacao怎么用?C++ Comunicacao使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Comunicacao类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main(int argc, char **argv) {
	//criar uma instancia da classe de comunicaao
	Comunicacao com = Comunicacao((char*)"COM3");
	if (com.iniciar() == EXIT_SUCCESS) {
		char ci, cf; //
		//Eixos eixos; //removi para usar a conf do Mag
		graus = 0;
		while (true) {
			//realizar a leitura do caractere I (Inicio)
			int resultado = com.ler((char*) &ci, sizeof(ci));
			if ((resultado == EXIT_SUCCESS) && (ci == 'I')) {
				//se a leitura dos eixos ocorrer bem
				//ler o caractere 'F' no final
				resultado = com.ler((char*) &graus, sizeof(graus));
				if (resultado == EXIT_SUCCESS) {
					resultado = com.ler((char*) &cf, sizeof(cf));
					if ((resultado == EXIT_SUCCESS) && (cf == 'F')) {
						cout<<"Graus = "<<graus<<endl;
					}
				}
			}
			Sleep(100); //mudanca de 100 para 50 ms, a leitura dos graus estava com delay alto demais
		}
	}
	return EXIT_SUCCESS;
}
开发者ID:Deaple,项目名称:SistemasEmbarcados,代码行数:26,代码来源:Executor.cpp

示例2: main

int main(char **argv, int argc) {

	InfoRF info = { 0 };
	char ai, at;

	//criar uma instancia da classe de comunicacao
#ifdef __linux__
	Comunicacao com = Comunicacao("/dev/ttyACM0");
#endif
#ifdef _WIN32 || _WIN64
	Comunicacao com = Comunicacao("COM6");
#endif

	com.iniciar();
	//realizar a leitura do caracter "A" (Inicial)
	int resultado;

	resultado = com.ler((char*) &ai, sizeof(ai));

	//coloca zero para todas as posicoes
	/*while(true){
	 if(com.ler((char*)&info, sizeof(InfoRF)) == 0){
	 cout <<"id = "<< info.id << endl;
	 cout <<"temp = "<< info.temperatura << endl;
	 cout <<"batm = "<< info.batimentos << endl;
	 cout <<"movimento = "<< info.movimento << endl;
	 }

	 Sleep(50);
	 }*/
	while (true) {
		if ((resultado == EXIT_SUCCESS) && (ai == 'I')) {
			//se a leitura de 'A' correr bem
			//ler a altitude
			resultado = com.ler((char*) &info, sizeof(info));
			if (resultado == EXIT_SUCCESS) {
				//se a leitura da altitude correr bem
				resultado = com.ler((char*) &at, sizeof(at));
				if (resultado == EXIT_SUCCESS && (at == 'T')) {
					cout << "id = " << info.id << endl;
					cout << "velocidade = " << info.velocidade << endl;
					cout << "altitude = " << info.altitude << endl;
					cout << "movimento = " << info.movimento << endl;
				}
			}
		}

		Sleep(50);
	}
	return 0;
}
开发者ID:manuela1111,项目名称:SistemasEmbarcadosIIUnidade,代码行数:51,代码来源:executor.cpp

示例3: main

int main(int argc, char* argv[]) {
	// ISE FOR POSSIVEL CRIAR O DAEMON
	if (daemonize() == EXIT_SUCCESS) {
		// INICIA O TRATAMENTO DE SINAIS
		iniciarTratamentoSinais();
		// LOG - REGISTRO DE OPERAÇÕES
		ofstream log(ARQUIVO_LOG, ios_base::out | ios_base::app);
		log << "Arquivo de log iniciado!" << endl;

		log << "Pipe sendo criando..." << endl;
		if (!pipeIniciado()) {
			log << "Falha de inicializacao do PIPE" << endl;

			exit(1);
		}
		//Iniciar comunicacao com o arduino
		com = Comunicacao (PORTA);
		com.iniciar();

		continuar = true;
		while (continuar) {
			int sensores = lerSensores();

			log << "Enviando sensores: " << sensores << endl;
			// ENVIA PARA O PIPE
			if (sensores != -1){
				enviarParaPipe(sensores);
			}

			sleep(1);
			}

		// REMOVE O ARQUIVO DE PIPE APOS USO
		unlink(ARQUIVO_PIPE);

		//Finalizar a comunicação
		com.finalizar();

		log << "Daemon de sensoriamento finalizado!" << endl;
	}

	return 0;
}
开发者ID:brunopotator,项目名称:SE3Unidade,代码行数:43,代码来源:daemon.cpp

示例4: main

int main(int argc, char* argv[]) {
	if (daemonize() == EXIT_SUCCESS) {
		iniciarTratamentoSinais();
		ofstream log(ARQUIVO_LOG, ios_base::out | ios_base::app);
		log << "Arquivo de log iniciado!" << endl;

		com = Comunicacao(PORTA);
		if(com.iniciar()!=0){
			log << "Falha de inicializacao na comunicacao com sensores"<<endl;
			exit(1);
		}

		log << "Pipe sendo criado..." << endl;
		if (!pipeIniciado()) {
			log << "Falha de inicializacao do PIPE" << endl;

			exit(2);
		}

		continuar = true;
		while (continuar) {
			int sensores = lerSensores();

			if(sensores != -1){
				log << "Enviando sensores: " << sensores << endl;
				enviarParaPipe(sensores);
			}

			usleep(250 * 1000);
		}
		unlink(ARQUIVO_PIPE);

		com.finalizar();

		log << "Daemon de sensoriamento finalizado!" << endl;
	}

	return 0;
}
开发者ID:the-maus,项目名称:sistemas-embarcados,代码行数:39,代码来源:daemon.cpp

示例5: iniciar

int iniciar(char* porta) {
	com = Comunicacao(porta);
	return com.iniciar();
}
开发者ID:ramonmsp,项目名称:embarcados,代码行数:4,代码来源:Extern.cpp

示例6: ler

int ler() {
	int resultado = com.ler((char*) &ci, sizeof(ci));
	if ((resultado == EXIT_SUCCESS) && (ci == 'I')) {
		resultado = com.ler((char*) &inforRF, sizeof(inforRF));
		if (resultado == EXIT_SUCCESS) {
			resultado = com.ler((char*) &cf, sizeof(cf));
			if ((resultado == EXIT_SUCCESS) && (cf == 'F')) {
				return resultado;
			}
		}

	}
	return resultado;
}
开发者ID:icaroramiires,项目名称:embarcados-ir,代码行数:14,代码来源:Extern.cpp

示例7: lerSensores

int lerSensores() {
	int sensores = -1;
	char ci = 0, cf = 0;

	if ((com.ler(&ci, sizeof(char)) == 0) && (ci == 'I')){
		int is = 0;
		if (com.ler((char*) &is, sizeof(is)) == 0) {
			if ((com.ler(&cf, sizeof(char)) == 0) && (cf == 'F')) {
				sensores = is;
			}
		}
	}

	return sensores;
}
开发者ID:brunopotator,项目名称:SE3Unidade,代码行数:15,代码来源:daemon.cpp

示例8: ler

int ler() {
	int resultado = EXIT_FAILURE;
	char ci = 0, cf = 0;
	resultado = com.ler((char*) &ci, sizeof(ci)); //manda ler e capta o resultado
	if (resultado == EXIT_SUCCESS && (ci == 'I')) { //se o resultado for sucesso e ele tiver encontrado o i
		resultado = com.ler((char*) &info, sizeof(info)); //vai ler o conteudo de dados depois do i na estrutura
		if (resultado == EXIT_SUCCESS) {  //se leu os dados ok
			resultado = com.ler((char*) &cf, sizeof(cf)); //o resultado sera a leitura do f
			if (resultado == EXIT_SUCCESS && (cf == 'F')) { //se leu tudo certinho, vai imprimir
				resultado = EXIT_SUCCESS;
			}

		}
	}
	return resultado;
}
开发者ID:ramonmsp,项目名称:embarcados,代码行数:16,代码来源:Extern.cpp

示例9: ler

int ler() {
	char ci, cf;
	// realizar a leitura do caractere 'I' (Inicio)
	int resultado = com.ler((char*) &ci, sizeof(ci));

	if ((resultado == EXIT_SUCCESS) && (ci == 'I')) {
		// se a leitura de 'I' ocorrer bem, ler os eixos
		resultado = com.ler((char*)&graus, sizeof(graus));
		//se a leitura dos eixos ocorrer bem, le o caractere 'F' (Final)
		if (resultado == EXIT_SUCCESS) {
			resultado = com.ler((char*)&cf, sizeof(cf));
			if ((resultado == EXIT_SUCCESS) && (cf == 'F')) {
				resultado = EXIT_SUCCESS;
			}
		}
	}
	return resultado;
}
开发者ID:Deaple,项目名称:SistemasEmbarcados,代码行数:18,代码来源:Extern.cpp

示例10: ler

int ler() {
    	char ci, cf; //
    	//ler o caractere 'I' no inicio
		int resultado = com.ler((char*) &ci, sizeof(ci));
			if ((resultado == 0) && (ci == 'I')) {
				//ler os dados
				resultado = com.ler((char*) &Dados, sizeof(Dados));
				if (resultado == 0) {
                    //ler o caractere 'F' no final
					resultado = com.ler((char*) &cf, sizeof(cf));
					if ((resultado == 0) && (cf == 'F')) {
                        resultado = 0;
                    }

            }
    }
    return resultado;
}
开发者ID:IFBA2015-1,项目名称:Cpp,代码行数:18,代码来源:Extern.cpp

示例11: lerSensores

int lerSensores() {
	int sensores = -1;

	char ci=0,  cf=0;
	int resultado = com.ler(&ci, sizeof(char));
	if ((resultado == EXIT_SUCCESS) && (ci == 'I')) {
		int is = 0;
		resultado = com.ler((char*) &is, sizeof(is));
		if (resultado == EXIT_SUCCESS) {
			resultado = com.ler(&cf, sizeof(char));
			if ((resultado == EXIT_SUCCESS) && (cf == 'F')) {
					sensores = is;
			}
		}

	}


	return sensores;
}
开发者ID:the-maus,项目名称:sistemas-embarcados,代码行数:20,代码来源:daemon.cpp

示例12: ler

int ler() {
	char ci, cf;
	// enquanto estiver executando...
	// realizar a leitura do caracter I (inicio)
	int resultado = com.ler((char*) &ci, sizeof(ci));
	if ((resultado == EXIT_SUCCESS) && (ci == 'I')) {
		// se a leitura de I ocorrer bem, ler os eixos
		resultado = com.ler((char*) &eixos, sizeof(eixos));
		if (resultado == EXIT_SUCCESS) {
			// se a leitura dos eixos ocorrer bem ler o carcter F Final
			resultado = com.ler((char*) &cf, sizeof(cf));
			if ((resultado == EXIT_SUCCESS) && (cf == 'F')) {
				// se tudo for atendido, exibir os eixos do acelerometro
					resultado = EXIT_SUCCESS;
			}

		}

	}
	return resultado;
}
开发者ID:fagnerpsantos,项目名称:sistemas-embarcados,代码行数:21,代码来源:Extern.cpp

示例13: finalizar

int finalizar() {
	return com.finalizar();
}
开发者ID:ramonmsp,项目名称:embarcados,代码行数:3,代码来源:Extern.cpp

示例14: finalizar

int finalizar(){
	return com.finalizar(); //Finaliza a conecção
}
开发者ID:IFBA2015-1,项目名称:Cpp,代码行数:3,代码来源:Extern.cpp


注:本文中的Comunicacao类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。