Господа, я застрял...
По нажатию кнопки я должен дождаться прихода символа и ответить на него в течение не более 70 мсек.
Стандартная конструкция типа терминала не подходит.
Я отправляю символ и пытаюсь читать ответ:
Код
USBStat=FT_Write(hUSB,TxBuffer,dwBytesToWrite,&dwBytesWritten);
if (!USBStat==FT_OK)
{
USBErr(USBStat);
return;
};
USBStat=FT_GetStatus(hUSB,&RxBytes,&TxBytes,&EventDWord);
if (!USBStat==FT_OK)
{
USBErr(USBStat);
return;
};
USBStat=FT_GetStatus(hUSB,&RxBytes,&TxBytes,&EventDWord);
Естественно, читаю ноль байт, так как комп переходит к чтению мгновенно, а ответ не успевает прийти.
Если же ставлю
Код
while(RxBytes==0)
{
Application->ProcessMessages();
USBStat=FT_GetStatus(hUSB,&RxBytes,&TxBytes,&EventDWord);
}
ShowMessage(RxBytes);
{
Application->ProcessMessages();
USBStat=FT_GetStatus(hUSB,&RxBytes,&TxBytes,&EventDWord);
}
ShowMessage(RxBytes);
То получаю гигантское число. ПРочие манипуляции приводят к зависанию программы.
Как подружить контроллер, FT232RL и этот долбаный Builder C++ ?