От хоста девайсу at91sam7s по USB передаю послыки одинаковый длины 50 байт. Содержимое следующих друг за другом посылок разное и повторяется через одну псылку. В качестве подтверждения, жду от девайса пакет, содержащий контрольную сумму (сумма значений всех байт посылки). По идее я должен принимать два чередующихся значения этой суммы, т.е. примерно такую последовательность 300 228 300 228 ... и т.д. А на самом деле числа повторяются, т.е. 300 300 300 228 300 228 300 228 228 .. и т.п. Если запускать приложение в режиме отладки, то повторений почти не встречается, но все же они есть, а если в обычном режиме запускать приложение, то повторений очень много.
Пример кода приложения:
Код
nBytes = 50;
PurgeComm(PipeOut,PURGE_TXABORT | PURGE_RXABORT | PURGE_TXCLEAR | PURGE_RXCLEAR);
Success = WriteFile(PipeOut, &buf_w, 50, &nBytes, NULL);
//Ожидание подтверждения прихода на передачу
while(RealRead<64)
{
ReadFile(PipeIn, &buff, 64, &RealRead, NULL);
}
RealRead = 0;
PurgeComm(PipeIn,PURGE_TXABORT | PURGE_RXABORT | PURGE_TXCLEAR | PURGE_RXCLEAR);
Может еще как-то буфер надо чистить?