Advantech PCI-1682U Bedienungsanleitung Seite 46

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 104
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 45
PCI-1680U/1682U User Manual 40
In asynchronous mode, operation will be pending if drivers cannot complete user's
write request at present, and GetLastError will be called to return
ERROR_IO_PENDING.
See MSDN for more information.
Example
Write one frame data in synchronous mode.
DWORD dwWrite;
canmsg_t WriteBuffer;
ZeroMemory(&WriteBuffer, sizeof(canmsg_t));
//WriteBuffer.flags = 0; //Standard frame
WriteBuffer.flags = MSG_EXT; //Extended frame
//WriteBuffer.flags |= MSG_RTR; //Remote frame
WriteBuffer.id = 0;
WriteBuffer.length = DATALENGTH;
for(int i=0; i<DATALENGTH; i++)
{
WriteBuffer.data[i] = i;
}
BOOL bSuccess = WriteFile(hDevice, &WriteBuffer, 1, &dwWrite,
0);
if(bSuccess)
{
if(dwWrite == 1)
{
//SUCCESS
}
else{
//Timeout
}
}
else{
DWORD dwError = GetLastError();
if (dwError == ERROR_IO_PENDING)
{
//pengding
}
else if(dwError == ERROR_INVALID_PARAMETER)
{
//parameter error
}
else if(dwError == ERROR_OPERATION_ABORTED)
{
//cancelled
}
else if(dwError == ERROR_GEN_FAILURE)
{
//bus off
}
}
Seitenansicht 45
1 2 ... 41 42 43 44 45 46 47 48 49 50 51 ... 103 104

Kommentare zu diesen Handbüchern

Keine Kommentare