Du sendest die Daten nicht als ASCII, sonder einfach als Bytes und setzt sie im PC wieder zusammen:

Code:
unsigned char i;
const unsigned char *p = (const unsigned char *) &gPidParam;

uart_putc ('<');

for (i=0; i < sizeof (gPidParam); i++)
{
   uart_putc (*p++);
}
Das Zusammensetzen am PC geht genauso. Zu achten ist darauf, daß bei int etc die Endianess stimmt. AVR ist little Endian, d.h. das low-Byte eines int steht an der kleinsten Adresse. Ist das am PC auch so, musst du nix weiter tun. Ansonsten musst du in das int-Format konvertieren.