Go Down

Topic: protocole de communication série bi-directionnel entre carte (Read 4 times) previous topic - next topic

osaka


Bon, le CR16. J'avoue je ne connais pas  :smiley-roll-sweat:


Et pourtant tu l'utilises tous les jours et même il y a 5 seconde, sur le protocole tcp/ip.
http://fr.wikipedia.org/wiki/Transmission_Control_Protocol#Somme_de_contr.C3.B4le
C'est une des principale différences entre le protocole tcp et udp.


On à l'air de dire que c'est rapide et facile, je suis loin d'être d'accord avec ça, d'autant plus qu'on a du mal à trouver ne serais-ce que quelques sources parlant d'un transfert fiable.


Il faut chercher du côté des protocoles domotiques (knx, plcbus, ...), automates (modbus, ...) , etc ...


a mon sens, l'I2C est bien plus simple d'autant plus que l'ack confirme la réception.


Ca a été le sujet de nombreuse discutions, la conclusion c'est que le choix ce fera selon le besoin,préférences et possibilités: longueur de bus, simple ou half et full duplex, maître-esclaves, vitesse, fiabilité, etc ...

Geeks

Ah ben oui... Forcément !

J'avais pas capté que tu était parti sur un protocole déjà établi. Oh ben alors... il n'y a plus qu'à cherché  :smiley-mr-green:

Je pensait que c'étais arbitraire moi  :smiley-roll-sweat: et galères !

Bon, donc si je résume, je cherche un protocole qui me va bien, je me débrouille pour que ça puisse être réalisable avec mon rov, et puis go code. C'est peut-être plus simple que de se basé directement sur ton code. A moins de vouloir choisir autre chose.

Si je puis me permettre de renommé le sujet en "protocole de communication série bi-directionnel entre carte"... Ça me semble bien plus parlant désormais  ;)

osaka


J'avais pas capté que tu était parti sur un protocole déjà établi. Oh ben alors... il n'y a plus qu'à cherché  :smiley-mr-green:

Je pensait que c'étais arbitraire moi  :smiley-roll-sweat: et galères !


Oui je me suis basé sur des protocoles existant dans le domaine de la domotique, automation, etc et d'ailleurs ils sont souvent similaire sur plusieurs points (logique le but et le développement est le même, tous gérer via µc, bus de terrain, ...).
Donc pas besoin de réinventé la roue, j'ai fais un mix de ce dont j'avais besoin et je l'ai adapté.
De loin tout ça peut paraître compliqué quand on a pas l'habitude, mais en y réfléchissant c'est totalement enfantin.  


Si je puis me permettre de renommé le sujet en "protocole de communication série bi-directionnel entre carte"... Ça me semble bien plus parlant désormais  ;)


Je pense aussi après ce virage à 180° .  :smiley-mr-green:

Geeks

Il a été renommé  :)

Bon, alors en fait, j'ai regardé un peu ce qui se faisait. Le plus approprié que j'ai scruté était une liaison par xbee pour 2 servo moteur. Mais j'aime pas bien l'idée du code que j'ai vue donc je l'ai ejecté.

Je m'interroge sur un point. Est-ce que on met une pause entre chaque octet ?

Dans ce cas, start / pause / lenght / pause / data 1 / pause / data 2 / pause / data 3 / pause / stop.

J'ai pas trouvé d'exemple encore de cr16 donc je ne l'ai pas inclue. Je pense que 2µs devrais être suffisant entre chaque octets.

Est-ce que quelqu'un saurais me dire ou me renseigner pour le cr16 ?

Merci d'y pensé.

osaka

#44
Apr 08, 2012, 02:38 pm Last Edit: Apr 08, 2012, 02:42 pm by osaka Reason: 1

Je m'interroge sur un point. Est-ce que on met une pause entre chaque octet ?

Dans ce cas, start / pause / lenght / pause / data 1 / pause / data 2 / pause / data 3 / pause / stop.
Je pense que 2µs devrais être suffisant entre chaque octets.


Pourquoi une pause ?  :~
A la transmition ou la réception ?


Est-ce que quelqu'un saurais me dire ou me renseigner pour le cr16 ?


Il y a un exemple ici dans mon code, voir les fonctions checkData et writeData.

http://arduino.cc/forum/index.php/topic,80422.msg720673.html#msg720673
http://arduino.cc/forum/index.php/topic,80422.msg723240.html#msg723240

Go Up