Вот код отправки, где endpoint адрес конечной точки, в случае отправки кт2. "Сделано по примеру с изиэлектроникс."
if(*endpoint->CSR & AT91C_UDP_TXCOMP) {
printf ("TX \n");
if(endpoint->Status == EP_STATUS_WTITE) {
if(endpoint->Size == endpoint->BytesReady) {
printf("%i\n",endpoint->BytesReady);
if(endpoint->Size && endpoint->Size % endpoint->MaxSize == 0) {EndpointSetFlag(endpoint, AT91C_UDP_TXPKTRDY);}
EndpointEndOfTransfer(endpoint, TRANSFER_STATUS_SUCCESS);
} else {
DWORD cpt = MIN(endpoint->Size - endpoint->BytesReady, endpoint->MaxSize);
while (cpt--) *endpoint->FDR = endpoint->Buffer[endpoint->BytesReady++];
EndpointSetFlag(endpoint, AT91C_UDP_TXPKTRDY);
}
} else {
if(endpoint->Type != EP_TYPE_CFG) EndpointDisableInterrupt(endpoint);
}
EndpointClearFlag(endpoint, AT91C_UDP_TXCOMP);
}
Вот код отправки, где endpoint адрес конечной точки, в случае отправки кт2.
"Сделано по примеру с изиэлектроникс."