Цитата(LeoLabs @ Oct 30 2006, 08:47)

Передаю данные от девайса к компу, но возникают проблемы при передаче более 8кБ (размер буффера).
Код
p=GetP(WN_C0_TA_PR);//&0x1fff;
i=0;
while(cnt--)
{
WN_TX_BUFF[p]=buff[i++];
p=(p+1)&0x1fff;//0x1fff
}
SetP(WN_C0_TW_PR,(unsigned int)p);
WNCmd(WC_SEND);
т.е. такое впечатление что в жабе буффер аппаратно не "закольцован". Может это баг?
Буфер закольцован!
но там интерфейс кривой
так нельзя записывать адрес перед отправкой!
SetP(WN_C0_TW_PR,(unsigned int)p);
надо записывать исходный + длина
Код
p=GetP(WN_C0_TA_PR);//&0x1fff;
last=p;
len=cnt;
.....
SetP(WN_C0_TW_PR,last+len);
т.е если вы перешли через границу писать то надо с адреса 0 и т.д.
а вот в указатель записывать уже значение больше 8192....
покрайней мере так в 3150