Хочу сделать эхо на CDC AT91SAM7

Только начинаю разбираться сильно не ругайте ....

там есть 2 функции

для передаци:
unsigned char CDCDSerialDriver_Write(void *data,
unsigned int size,
TransferCallback callback,
void *argument)
{
return USBD_Write(CDCDSerialDriverDescriptors_DATAIN,
data,
size,
callback,
argument);
}

для приема:

unsigned char CDCDSerialDriver_Read(void *data,
unsigned int size,
TransferCallback callback,
void *argument)
{
return USBD_Read(CDCDSerialDriverDescriptors_DATAOUT,
data,
size,
callback,
argument);
}


Не знаю что должно быть в качестве параметва TransferCallback callback и argument ???

CDCDSerialDriver_Read(usbBuffer,8,0,0);
for (i=0; i<100000; i++) //задержка
{}
CDCDSerialDriver_Write(usbBuffer,8,0,0);

вот что получаю в терминале ничего не отправляю пока еще:
<0><0><0><0><0><0><0><0><0><0><0><0><0><0><0><0><0>
отправляю 1111 и вот что получаю
1111<0><0><0><0>1111<0><0><0><0>1111<0><0><0><0>1111 и так дальше