Help prog du RS232 en c
matt22
-
lyp -
lyp -
bonjour
j'ai un gros problème, je doit réussir à creer un prog pour recevoir des données par le port série en c
malheureusement je ne comprend pas grand chose au niveau du port série...
si quelqu'un à un prograamme qui pourrai me donner de l'inspiration....
Merci d'avance
j'ai un gros problème, je doit réussir à creer un prog pour recevoir des données par le port série en c
malheureusement je ne comprend pas grand chose au niveau du port série...
si quelqu'un à un prograamme qui pourrai me donner de l'inspiration....
Merci d'avance
A voir également:
- Help prog du RS232 en c
- Robot prog - Télécharger - Édition & Programmation
- Télécharger driver rs232 gratuit - Télécharger - Utilitaires
- Terminal rs232 windows 10 - Télécharger - Utilitaires
- Rs232 usb schema ✓ - Forum Réseau
- Telecharger driver rs232 gratuit ✓ - Forum Pilotes (drivers)
2 réponses
Salut
en supposant que tu es sous windows
je n'utilise que rarement le c mais pour la rs232 je le traite comme un fichier
hCom = CreateFile( "COM1",
GENERIC_READ | GENERIC_WRITE,
0, // exclusive access
NULL, // no security attributes
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL
);
ensuite pour la config
pour aller la lire
fSuccess = GetCommState(hCom, &dcb);
après avoir modifier dcb (structure pour parite vitesse etc....
fSuccess = SetCommState( hCom, &dcb ) ;
SetupComm(
hCom, // handle to communications device
4096, // size of input buffer
4096 // size of output buffer
);
après pour l'écriture
WriteFile(
hCom, // handle to file to write to
&buffer, // pointer to data to write to file
OfBytes, // number of bytes to write
&lpNumberOfBytesWritten, // pointer to number of bytes written
NULL // pointer to structure for overlapped I/O
);
là ou ça se complique c'est la lecture
pour ne pas avoir de souci je fais un thread mais ce ne doit pas etre obligatoire
hth = CreateThread(
(LPSECURITY_ATTRIBUTES)NULL, // pointer to security attributes
0, // initial thread stack size
(LPTHREAD_START_ROUTINE)proc, // pointer to thread function
(LPVOID) NULL, // argument for new thread
0L, // creation flags
(LPDWORD) &lpThreadId // pointer to receive thread ID
);
et là ma fonction lecture
//thread sur la RS232
DWORD WINAPI proc(void)
{
a savoir qu'il exite des evenements a parametrer pour les utiliser
fReadStat = ReadFile( hCom, &tata,1, &dwLength, NULL) ;
}
En espérant t'avoir aidé
http://j.lypstenger.free.fr
@+ JM
en supposant que tu es sous windows
je n'utilise que rarement le c mais pour la rs232 je le traite comme un fichier
hCom = CreateFile( "COM1",
GENERIC_READ | GENERIC_WRITE,
0, // exclusive access
NULL, // no security attributes
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL
);
ensuite pour la config
pour aller la lire
fSuccess = GetCommState(hCom, &dcb);
après avoir modifier dcb (structure pour parite vitesse etc....
fSuccess = SetCommState( hCom, &dcb ) ;
SetupComm(
hCom, // handle to communications device
4096, // size of input buffer
4096 // size of output buffer
);
après pour l'écriture
WriteFile(
hCom, // handle to file to write to
&buffer, // pointer to data to write to file
OfBytes, // number of bytes to write
&lpNumberOfBytesWritten, // pointer to number of bytes written
NULL // pointer to structure for overlapped I/O
);
là ou ça se complique c'est la lecture
pour ne pas avoir de souci je fais un thread mais ce ne doit pas etre obligatoire
hth = CreateThread(
(LPSECURITY_ATTRIBUTES)NULL, // pointer to security attributes
0, // initial thread stack size
(LPTHREAD_START_ROUTINE)proc, // pointer to thread function
(LPVOID) NULL, // argument for new thread
0L, // creation flags
(LPDWORD) &lpThreadId // pointer to receive thread ID
);
et là ma fonction lecture
//thread sur la RS232
DWORD WINAPI proc(void)
{
a savoir qu'il exite des evenements a parametrer pour les utiliser
fReadStat = ReadFile( hCom, &tata,1, &dwLength, NULL) ;
}
En espérant t'avoir aidé
http://j.lypstenger.free.fr
@+ JM