⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c.svn-base

📁 A simple protocol using CRC error check.
💻 SVN-BASE
字号:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#include "Communication.h"
int main(void)
{
	/* variables locales */
	char buffer[256], type[1], priorite[1];

	int nId, nChoice, nBytesWritten, nBytesRead;
	char * message;
	File *listeOrdre = NULL;


	message = (char*) malloc(sizeof(char) * 500);
	if(message == NULL){
		exit(1);
	}

	/* demande du num閞o du port COM */
	printf("Entrez le numero du port COM : ");
	scanf("%d", &nId);

	/* tentative d'ouverture */
	printf("Ouverture et configuration du port COM%d...\r\n", nId);
	if(!OpenCOM(nId)) return -1;
	printf("...OK\r\n");


	do
	{
		/* menu */
		printf("\r\n");
		printf("1 : Envoyer des donnees.\r\n");
		printf("2 : Recevoir des donnees.\r\n");
		printf("3 : Quitter.\r\n");
		printf("Choix : ");
		scanf("%d", &nChoice);

		/* enoyer des donn閑s */
		if(nChoice == 1)
		{

			printf("\r\n");
			printf("Priorite :\r\n");
			fflush(stdin);
			gets(priorite);

			printf("\r\n");
			printf("Type :\r\n");
			fflush(stdin);
			gets(type);

			printf("\r\n");
			printf("Donnees a envoyer :\r\n");
			fflush(stdin);
			gets(buffer);
			message = codageTrame(atoi(priorite), atoi(type), buffer, message);
//			message = codageTrame(0, 6, buffer, message);
			printf("\r\n");
			printf("Envoi des donnees...\r\n");
			if(WriteCOM(message, strlen(message), &nBytesWritten))
				printf("%d octet(s) envoye(s).\r\n", nBytesWritten);
			else
				printf("Erreur lors de l'envoi.\r\n");
		}

		/* recevoir des donn閑s */
		if(nChoice == 2)
		{
			printf("\r\n");
			printf("Reception de donnees...\r\n");
			if(ReadCOM(buffer, sizeof(buffer)-1, &nBytesRead))
			{
				buffer[nBytesRead] = '\0';
				printf("%d octet(s) recu(s) :\r\n%s\r\n", nBytesRead, buffer);
				traitementTrame(&listeOrdre, buffer);
			}
			else
				printf("Erreur lors de la r閏eption.\r\n");
		}
		fflush(stdout);
	}while(nChoice != 3);

	/* fermeture du port COM et retour */
	CloseCOM();

	free(message);
	free(listeOrdre);
	return 0;
}   /* main() */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -