RF 434 MHZ

Bonjour,

J'ai un souci, je cherche à envoyer plusieurs variables par le biais de mon emetteur RF 434 MHZ.
Je suis débutant en programmation, je cherche depuis plusieurs jours un code à modifier, sans succes.
J'ai besoin d'envoyer un message de 10 caractères que j'aurai au préalable concaténé avec des unsigned char.
Un petit coup de main ?
Voici mon code, il me manque la partie du message concatené.

unsigned char uc1;
unsigned char uc2;
unsigned char uc3;
unsigned char uc4;
unsigned char uc5;
int i6;

// Je voudrai concatener uc1,uc2,uc3,uc4,uc5,i6 dans le msg

const char *msg;

vw_send((uint8_t *)msg, strlen(msg)); // On envoie le message
vw_wait_tx(); // On attend la fin de l'envoi
vw_wait_tx();

Merci pour le coup de main.

Bonsoir,

Regarde cela.

A+:D

Je te remercie, mais cela ne m'apporte pas de réponse sur ma demande. J'avais déjà regardé ce lien durant mes recherches. Il montre surtout comment analyser la partie réception de message.
A part un code ou on envoie un INT, il y a rien d'autre.

Merci à ceux qui prendront le temps de me répondre.

Leprecis:
Bonjour,

J'ai un souci, je cherche à envoyer plusieurs variables par le biais de mon emetteur RF 434 MHZ.
...

Bonsoir
Selon quel "protocole" ? 8)

Bonsoir,

j'utilise la librairie VirtualWire, avec cet emetteur :

http://forum.snootlab.com/viewtopic.php?f=38&t=399

Merci

Leprecis:
Bonsoir,

j'utilise la librairie VirtualWire, avec cet emetteur :

http://forum.snootlab.com/viewtopic.php?f=38&t=399

Merci

Alors regarde peut etre vers les specifs de la lib virtualwire
sous toutes reserves , il me semble qu'il y a "un payload" max imposé (modifiable ? )

tu es peut etre "hors limite" avec

// Je voudrai concatener uc1,uc2,uc3,uc4,uc5,i6 dans le msg

Personne n'a utilisé ces Emetteurs ? Avec l'envoi autre qu'un message char *msg ???
Un coup de main svp

Qu'est ce qui t'empêches d'envoyer simplement 6 messages char successifs ?

Dans le message que je veux envoyer, je dois pouvoir concatener plusieurs variables (voir message plus haut).

Euh ...

char msg[8];// un élément de plus dans la chaine pour le caractère de fin

msg[0] = uc1;
msg[1] = uc2;
...
msg[4] = uc5;
msg[5] = char(i6/256); //première partie de l'int (2 octets)
msg[6] = char(i6%256); //deuxième partie de l'int
msg[7] = '\0'; // fin

Ça convient ? Ou pas ...

Merci !! :stuck_out_tongue_closed_eyes: