Salut à tous
J'ai réaliser un programme en C avec Borland v3.0 afin de lire sur le port série, et là no problem.
Par contre je n'arrive pas à envoyer le contenu d'un fichier par ce port, je suis sur de lire le contenu correctement, donc je pense que le transfert n'est pas bon.
Si quelqu'un à une solution à me proposer ou un peu de temps pour lire mon programme...
De plus en approfondissant mes recherches je m'apperçois que lors du premier envoi (càd au démarrage du PC), la transmission se fait correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <string.h> #include <bios.h> #define COM1 0 #define DATA_READY 0x100 #define TRUE 1 #define FALSE 0 #define SETTINGS (_COM_9600 | _COM_CHR8 | _COM_STOP1 | _COM_NOPARITY) void main(void) { enum { BUF_SZ = 1024 }; FILE *tmp, *send; fpos_t *pos; char tab[BUF_SZ]; int i=0; clrscr(); _bios_serialcom(_COM_INIT, COM1, SETTINGS); tmp=fopen("datalog.dat","rb"); while ((fread(tab, 1, BUF_SZ, tmp)) != 0); _bios_serialcom(_COM_STATUS, COM1, 0); while(tab[i]!=0) { _bios_serialcom(_COM_SEND, COM1,tab[i]); i++; } fclose(tmp); }
Mais après plus rien, je pense donc qu'il ya un problème de libération du port ou quelque chose comme cela..
Si quelqu'un à une solution
PS: je travaille sous Borland V3.0
Partager