Re: [Pdmtl] Communication sérielle

Alexandre Quessy alex at sourcelibre.com
Wed Apr 5 17:02:32 EDT 2006


Intéressant tout ça. Ouais, j'ai plus d'affinité avec l'ASCII,
d'autant plus qu'il a l'avantage d'être standard, comme son nom
l'indique.

Vient alors une petite question que je me suis posé lorsque j'ai voulu
communiquer en FUDI avec PD : à combien de décimales dois-je arrondir
mes float lorsque je les converti en ASCII ?

aalex




Le 05/04/06, Marc Lavallée<marc at hacklava.net> a écrit :
> Cette gymnastique ne vaut la peine qu'avec des impératifs de vitesse. Et
> tant qu'à faire, au lieu de réinventer un protocole, utilisez le protocole
> MIDI. Personellement, je préfère les protocoles qui utilise du texte en
> ASCII, parce que c'est simple, intuitif, lisible, et permet de communiquer
> n'importe quoi. OSC fonctionne en texte, FUDI aussi. Mon deux sous...
>
> Le 5 Avril 2006 11:21, Thomas Ouellet Fredericks a écrit:
> > Voci un genre de code plus intuitif selon moi pour l'utilisateur:
> > tu gardes plus de la moitié des valeurs possibles (156 sur 256) pour
> > des codes de contrôle (genre break, feed, setasinput, setasoutput,
> > getadc, etc...) et en soustrayant aux autres (156 à 256) 100, tu peux
> > avoir une résolution de dizaines. Tu peux donc faire qqch du genre
> > pd à arduino: 32 -> GetAdc
> > arduino à pd: 158 -> 158 -156 = 2
> > arduino à pd: 255 -> 255 - 156 = 99
> > arduino à pd: 0 -> Done
> > lorsque pd reçoit le Done il calcule la valeur, soit 9902 (2*1+99*100)
> >
> > Les codes contrôle ne rentreront jamais en conflit avec les valeurs et
> > les valeurs peuvent être lues à l'oeil.
> >
> > Une idée de même.
> > Encore plus intuitif, c'est de garder les chiffres 0 à 99 pour les
> > valeurs numériques et les autres (100-255) pour des codes de contrôle.
> >
> > Tom
> >
> > On 4/4/06, Mathieu Bouchard <matju at artengine.ca> wrote:
> > > On Tue, 4 Apr 2006, Alexandre Quessy wrote:
> > > > Donc, un bon protocole pour transmettre des nombres plus grands que
> > > > 256 serait de le transmettre en ASCII. Super. Merci.
> > >
> > > Aussi, le BER permet cela. Le BER est un encodage auto-délimitant pour
> > > des nombres de taille variable. C'est facile: tu écris ton nombre en
> > > base 128 et tu rajoutes 128 à chaque chiffre qui n'est pas le dernier
> > > (ou alternativement tu rajoutes 128 juste au dernier).
> > >
> > > exemple:
> > >  1000000 = 7812 reste 64
> > >     7812 =   61 reste  4
> > >       61 =    0 reste 61
> > >
> > > alors tu écris 61+128=189 suivi de 4+128=132 suivi de 64.
> > >
> > > L'avantage de cette méthode c'est que ça prend 2 fois moins bytes que
> > > ASCII.
> > >
> > >  _ _ __ ___ _____ ________ _____________ _____________________ ...
> > >
> > > | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju
> > > | Freelance Digital Arts Engineer, Montréal QC Canada
> >
> > _______________________________________________
> > Pdmtl mailing list
> > Pdmtl at artengine.ca
> > http://ns.artengine.ca/mailman/listinfo/pdmtl
>
> _______________________________________________
> Pdmtl mailing list
> Pdmtl at artengine.ca
> http://ns.artengine.ca/mailman/listinfo/pdmtl
>


--
Alexandre Quessy
http://alexandre.quessy.net/



More information about the Pdmtl mailing list