Projet CAN

Voir le sujet précédent Voir le sujet suivant Aller en bas

Projet CAN

Message  zakari le Ven 23 Avr 2010 - 14:50

Bonjour,
je suis debutant en C ,en fait j'ai un projet sur la gestion des messages CAN(iso 15765-3 et -2) ,et j'ai du mal a programmer la structure de mon message.Je m'explique:
dans la couche application du protocol de communication on trouve un message char* d'une taille superieur a 8 bytes et dans la couche reseau on dois ajouter 3 bytes d'identification et on dois couper (le message+3bytes) à des paquet de 8 bytes.
mon probléme c'est que je sais pas d'ou commencer , si quelqu'un peut aider je serrai trés reconnaissant .

trés cordialement

zakari

Messages : 3
Date d'inscription : 23/04/2010

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Projet CAN

Message  -ed- le Dim 25 Avr 2010 - 5:59

zakari a écrit:Bonjour,
je suis debutant en C ,en fait j'ai un projet sur la gestion des messages CAN(iso 15765-3 et -2) ,et j'ai du mal a programmer la structure de mon message.Je m'explique:
dans la couche application du protocol de communication on trouve un message char* d'une taille superieur a 8 bytes et dans la couche reseau on dois ajouter 3 bytes d'identification et on dois couper (le message+3bytes) à des paquet de 8 bytes.
mon probléme c'est que je sais pas d'ou commencer , si quelqu'un peut aider je serrai trés reconnaissant .

trés cordialement
Un système de découpage de message en blocs de 3 octets n'est pas bien compliqué. Je propose que tu commences par ça...

Exemple :

On a un message de 10 octets : "abcdefghij" à émettre. On doit le découper de façon à émettre :

3 : "abc"
3 : "def"
3 : "ghi"
1 : "j"

évidemment, le dernier bloc a une taille de 1, 2 ou 3.

Une boucle avec un compteur de caractères restant à émettre et une avance par 3 devrait suffire. D'ailleurs, si on cherche bien, il y a un exemple de cet algorithme dans http://www.bien-programmer.fr/reseaux.php

_________________
C is a sharp tool !

-ed-
Admin
Admin

Messages : 289
Date d'inscription : 26/05/2008
Age : 60
Localisation : Paris 6eme arrondissement (75, France)

Voir le profil de l'utilisateur http://bien-programmer.fr

Revenir en haut Aller en bas

Re: Projet CAN

Message  zakari le Lun 26 Avr 2010 - 11:12

Merci pour votre reponse "ed", je suis entrain de voir l'exemple des sockets.
dans mon projet je dois utiliser un driver virtuel Bus CAN (vector), et enplus je dois mettre des fct "Waitforsingleobjet" pour attendre la confirmation du serveur avant d'envoyer le packet suivant et je bloque dans cet etape, si quelqu'un a un exemple de code ou des infos
je le remercie infiniment.
Cordialement

vous trouvez ci-joint le VCAN.h que je dois utiliser
http://apfw.sourceforge.net/api/html/_v_can_d_8h-source.html

zakari

Messages : 3
Date d'inscription : 23/04/2010

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Projet CAN

Message  -ed- le Lun 26 Avr 2010 - 11:28

Le fonctionnement synchrone avec WaitForASingleObject() n'est pas très différend de l'usage de select() que je décris dans mon article. La programmation Windows n'est pas ma spécialité... Ceci-dit, je ne suis pas persuadé qu'il faille utiliser l'attente synchrone (lourd et complexe), car les sockets sont prévus pour un fonctionnement asynchrone (send and forget). A moins qu'il y ait à gérer un protocole d'acquittement, au quel cas, il faut surveiller la réception après l'émission. Mais dans ce cas, recv() suffit ...

Tout dépend du type de protocole. Si on doit gérer la réception d'évènements spontanés, effectivement, on échappe pas soit à l'écriture de 2 tâches indépendantes asynchrones (threads), soit à la sérialisation (mode synchrone) avec select() ou équivalent (select() fonctionne aussi sous Windows tant qu'il s'agit de sockets).


Dernière édition par -ed- le Lun 26 Avr 2010 - 12:34, édité 2 fois

_________________
C is a sharp tool !

-ed-
Admin
Admin

Messages : 289
Date d'inscription : 26/05/2008
Age : 60
Localisation : Paris 6eme arrondissement (75, France)

Voir le profil de l'utilisateur http://bien-programmer.fr

Revenir en haut Aller en bas

Re: Projet CAN

Message  zakari le Lun 26 Avr 2010 - 12:25

Merci infiniment "ed"
cordialement

zakari

Messages : 3
Date d'inscription : 23/04/2010

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Projet CAN

Message  Contenu sponsorisé Aujourd'hui à 15:27


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum