Serial packet transfer from RCM5600w to Crystalfontz LCD module

All, I have an issue trying to send serial packet data between an RCM5600W mini-core with deluxe dev kit (Serial Comm board) to a Crystalfontz CFA635 LCD module. I am using Dynamic C 10.64. The sample code puts.c transmits to hyperterm correctly, but the Crystalfontz LCD expects CRC checked packets. I have used their CRC algorithm to create the packet structure, but when I try to send it,the display and hyperterm do not read it correctly. I have tried a few different baud/bit combos, but nothing. Any ideas would be appreciated. Test code sample below.
Thanks in advance.

#define CINBUFSIZE 31
#define COUTBUFSIZE 31

unsigned short get_crc(unsigned char count,unsigned char *ptr)
	unsigned short crc; //Calculated CRC
	unsigned char  i; //Loop count, bits in byte
	unsigned char  data; //Current byte being shifted
	crc = 0xFFFF; // Preset to all 1's, prevent loss of leading zeros
		data = *ptr++;
		i = 8;
			if((crc ^ data) & 0x01){
				crc >>= 1;
				crc ^= 0x8408;
				crc >>= 1;
				data >>= 1;
		} while(--i != 0);
	return (~crc);

void main()
#define MAX_DATA_LENGTH 22
	struct command_packet{
		unsigned char command;
		unsigned char data_length;
		unsigned char data[MAX_DATA_LENGTH];
		unsigned short CRC;
   int ret;
	// Welcome message for display
   char initdisplay[] = "WiFi Msg Center";
  	packet.command = 31;		//31 is command type to send to LCD
   /* data_length = length of string +2 for the row and col arg */
   packet.data_length = strlen(&initdisplay[0]) + 2;[0] = 0; /* row to send to*/[1] = 0; /* col to send to*/
   strncpy(&[2], initdisplay, strlen(initdisplay));
   printf("[2] -> [%d]: \"%s\"
", strlen(&[2]), &[2]);
   printf(" length: \"%d\"
", strlen(&[2]));
   printf(" location: \"%x\"
", &[2]);
   printf(" \"%s\"
", &[2]);
   /* calc CRC for entire packet */
   packet.CRC = get_crc(strlen(initdisplay) +4,(unsigned char*)&packet.command);
	ret = serCwrite(packet,26);
	// first, wait until the serial buffer is empty
	while (serCwrFree() != COUTBUFSIZE);
	// then, wait until the Tx data register and the Tx shift register
	//  are both empty
	while (BitRdPortI(SBSR, 3) || BitRdPortI(SBSR, 2));
	// now we can close the serial port without cutting off Tx data