Bonjour,
Quelle sont les variables que l'on peux mettre sous builder sous 16 bits ?
J'ai entendu parler de short int, est-ce une 16 bits ?
Bonjour,
Quelle sont les variables que l'on peux mettre sous builder sous 16 bits ?
J'ai entendu parler de short int, est-ce une 16 bits ?
En g�n�ral oui mais tu peux faire le test
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5 if(sizeof(short int) == 2) { ... }
Raymond
Vous souhaitez participer � la rubrique R�seaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs syst�me et r�seau � configurer leurs �quipements SNMP r�seau.
e-verbeUn logiciel de conjugaison des verbes de la langue fran�aise.
Ma page personnelle sur DVP.
J'ai fait le test avec �a et malheureusement �a ne marche pas mais je sais pourquoi.. mon port s�rie est configur� en 8 bits, ne peut-on pas le mettre en 16 ?
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 short int tableau[1] = {0x0000} ComPort1->Write(tableau, 1);
En g�n�ral, un port s�rie est utilis� pour envoyer des octets (donc 8 bits). Je ne connais pas de ports s�rie sur lequel tu peux envoyer des words (2 octets)
Raymond
Vous souhaitez participer � la rubrique R�seaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs syst�me et r�seau � configurer leurs �quipements SNMP r�seau.
e-verbeUn logiciel de conjugaison des verbes de la langue fran�aise.
Ma page personnelle sur DVP.
Je n'ai jamais utilis� de port s�rie mais
�a revient pas au m�me?
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2 short int tableau[1] = {0x0000} ComPort1->Write((char*)tableau, sizeof(short int)*1);
Sinon, quand on veut un type cod� sur un certain nombre de bits ce n'est pas une bonne id�e de faire des suppositions sur le types normaux, ils sont susceptibles de changer quand on bascule vers une autre archi/un autre os/voire m�me un autre compilo. Il existe des typedefs pour �a dans un grand nombre de biblios y compris dans la biblio standard (si elle est suffisamment � jour). Dans ce dernier cas, le header � inclure est <stdint.h>.
en effet, �a reviens au m�me mais bon but �tait d'envoyer un signal de 16 bits. Bref ce n'est pas possible.
Autre question, peut-on mettre le port TX au niveau logique 1 ou 0 ? (sans avoir de trames, bit de start ou bit de stop...)
Peut �tre en jouant avec les signaux RTS/CTS et DTR/DSR. Il existe une notion de BREAK, il faut voir comment le signal TX est positionn� lors d'un break.
Raymond
Vous souhaitez participer � la rubrique R�seaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs syst�me et r�seau � configurer leurs �quipements SNMP r�seau.
e-verbeUn logiciel de conjugaison des verbes de la langue fran�aise.
Ma page personnelle sur DVP.
j'ai cherch� un peu ce qu'il y avait sur le break mais rien de tr�s int�ressant, disons qu'il n'influe pas sur le TX.
Bon malheureusement je vais devoir me r�soudre � acheter un adaptateur usb - dmx... Je pensais pouvoir le faire avec une simple trame rs-232 mais ce 88us me fou tout en l'air !
merci pour tout![]()
Salut,
Si tu veux jouer avec des bits, peut �tre devrais tu te tourner vers... la classe bitset... tout simplement
Tu verra, elle est particuli�rement utile pour la gestion des bits![]()
A m�diter: La solution la plus simple est toujours la moins compliqu�e
Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
mon tout nouveau blog
bitset ?? c'est la premi�re fois que j'en entend parler !
Aurait-tu un tuto, une page sur laquelle on en parle ?
J'ai regard� sur le net.. pas grand chose
oula je ne comprend pas tout ! A quoi peut service ce bitset ? Pour ma part j'aimerais juste enlever un bit de stop au d�but de ma trame qui fou sa me***.
N'est-ce pas plut�t un bit de start que tu veux retirer, s'il est au d�but?
Attention, l'UART fait la diff�rence : Y'en a un des deux qui est plus ou moins r�glable, l'autre non...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Pas tout � fait:
Permet d'�tre plus s�r, �tant donn� que sizeof() renvoie un nombre de byte, et que le nombre de bits d'un byte n'est pas d�fini (et vous n'avez certainement pas eu le plaisir de bosser avec des bytes de 32 bits...)
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 if (std::numeric_limits<short>::digit == 16) { }
Quoi qu'il en soit, la taille d'un short n'est pas d�finie par le standard C++: elle peut donc varier d'une configuration � l'autre. Seule la relation
est d�finie.
Code : S�lectionner tout - Visualiser dans une fen�tre � part (sizeof(char) == 1) <= sizeof(short) <= sizeof(int) <= sizeof(long)
Si ton compilateur est compatible avec le standard C99 (ce n'est pas le cas de Visual C++ .Net 2005), tu peux utiliser les types intN_t (int8_t, int16_t, ...) et uintN_t (uint8_t, uint16_t) d�finis dans <stdint.h>. La prochaine norme C++ d�finira aussi ces types (ce qui n'est pas le cas dans la version 2003 du standard).
Sinon, tu peux aussi d�cider de te limiter � un compilateur que tu connais, et vogue la gal�re. Une fois le programme compil�, la taille des types ne change pas, donc si elle est connue au moment de la compilation, tout est ok.
[FAQ des forums][FAQ D�veloppement 2D, 3D et Jeux][Si vous ne savez pas ou vous en �tes...]
Essayez d'�crire clairement (c'est � dire avec des mots fran�ais complets). SMS est votre ennemi.
Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Caf�. C'est d�pass� tout �a.
Et si vous �tes sages, vous aurez peut �tre vous aussi la chance de passer � la t�l�. Ou pas.
Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.
tibo7: En clair, tu cherches � communiquer par port s�rie avec un truc qui n'est pas compatible RS232 ?
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Chez moi std::numeric_limits<short>::digit vaut 15 et n'a peu de rapport avec la taille d'un type.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 if (sizeof(short)*CHAR_BIT == 16) { }
C'est exactement la raison pour laquelle on d�conseille de faire la moindre supposition sur la taille des types de base...
C'est aussi la raison pour laquelle je proposais d'utiliser un bitset.
Ainsi, si tu cr�e un bitset d'une taille de... 16 bits en l'occurrence, tu place les diff�rents bits � la valeur qui t'int�resse, puis il ne te reste "plus qu'�" les envoyer dans l'ordre dans lequel ils sont attendus![]()
A m�diter: La solution la plus simple est toujours la moins compliqu�e
Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
mon tout nouveau blog
[FAQ des forums][FAQ D�veloppement 2D, 3D et Jeux][Si vous ne savez pas ou vous en �tes...]
Essayez d'�crire clairement (c'est � dire avec des mots fran�ais complets). SMS est votre ennemi.
Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Caf�. C'est d�pass� tout �a.
Et si vous �tes sages, vous aurez peut �tre vous aussi la chance de passer � la t�l�. Ou pas.
Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.
Partager