📄 main.c.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 + -