21.07.2015 Views

Programming Info D2XXPG31.pdf

Programming Info D2XXPG31.pdf

Programming Info D2XXPG31.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Classic Interface Functions36Sometime later, block the application thread by waiting on the event, then when the event hasoccurred, determine the condition that caused the event, and process it accordingly.WaitForSingleObject(hEvent,INFINITE);DWORD EventDWord;DWORD RxBytes;DWORD TxBytes;FT_GetStatus(ftHandle,&RxBytes,&TxBytes,&EventDWord);if (EventDWord & FT_EVENT_MODEM_STATUS) {// modem status event detected, so get current modem statusFT_GetModemStatus(ftHandle,&Status);if (Status & 0x00000010) {// CTS is high}else {// CTS is low}if (Status & 0x00000020) {// DSR is high}else {// DSR is low}}if (RxBytes > 0) {// call FT_Read() to get received data from device}Linux ExampleThis example shows how to wait for a character to be received or a change in modem status.First, create the event and call FT_SetEventNotification.FT_HANDLE ftHandle;FT_STATUS ftStatus;EVENT_HANDLE eh;DWORD EventMask;ftStatus = FT_Open(0, &ftHandle);if(ftStatus != FT_OK) {// FT_Open failedreturn;}pthread_mutex_init(&eh.eMutex, NULL);pthread_cond_init(&eh.eCondVar, NULL);EventMask = FT_EVENT_RXCHAR | FT_EVENT_MODEM_STATUS;ftStatus = FT_SetEventNotification(ftHandle, EventMask, (PVOID)&eh);Sometime later, block the application thread by waiting on the event, then when the event hasoccurred, determine the condition that caused the event, and process it accordingly.pthread_mutex_lock(&eh.eMutex);pthread_cond_wait(&eh.eCondVar, &eh.eMutex);pthread_mutex_unlock(&eh.eMutex);DWORD EventDWord;DWORD RxBytes;DWORD TxBytes;DWORD Status;FT_GetStatus(ftHandle,&RxBytes,&TxBytes,&EventDWord);if (EventDWord & FT_EVENT_MODEM_STATUS) {// modem status event detected, so get current modem statusFT_GetModemStatus(ftHandle,&Status);if (Status & 0x00000010) {// CTS is high}else {© Future Technology Devices International Ltd. 2005

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!