décomposition d'une chaine en variables uint8_t

je reviens sur l'idee de J-L-M d'envoyer les données 1 par une au lieu de faire une phrase.
sachant que les données sont :

uint8_t emetteur = 0,destinataire=1,heureCourante=8,minCourante=30,secCourante=0,hUp=8,minUp=0,autoUp=1,hDown=19,minDown=15,autoDown=1,checksum=10;
 char transmissionVolets[50];
 //strcpy(transmissionVolets,"$");=================> JE REMPLACE PAR SNPRINTF
// la chaine devra etre "$emetteur,destinataire,heureCourante,minCourante,secCourante,hUp,minUp,autoUp,hDown,minDown,autoDown,*checksum"

et sachant que l'emission se fait avec virtualwire (ou autre si ce n'est pas une bonne idée)
et sachant surtout que je souhaite que la bonne réception de la totalité soit confirmée, quelqu'un pourrait il m'aider à créer le code coté émetteur et coté récepteur sans être "mémorivore"...

je vais rafraichir 6 recepteurs chaque 30 minutes environ, j'avais essayer de créer une union pour l'envoi sans y parvenir et j'avais essayé de verifié le checksum à la réception mais ca a planté aussi...
Merci de vos pistes