Advantech PCI-1682U Bedienungsanleitung Seite 61

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 104
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 60
55 PCI-1680U/1682U User Manual
Chapter 4 Software Requirements
4.5.2 How to send Extended frame, compatible with CAN 2.0B.
DWORD dwWrite=0;
canmsg_t WriteBuffer;
ZeroMemory(&WriteBuffer, sizeof(canmsg_t));
WriteBuffer.flags = MSG_EXT; //Extended frame
WriteBuffer.id = 0;
WriteBuffer.length = 8;
for(int i=0; i<8; i++)
{
WriteBuffer.data[i] = i;
}
WriteFile(hDevice, &WriteBuffer, 1, &dwWrite, 0);
4.5.3 How to send RTR frame.
DWORD dwWrite=0;
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 = 0;
WriteFile(hDevice, &WriteBuffer, 1, &dwWrite, 0);
4.5.4How to dispose received messages.
DWORD dwRead;
canmsg_t ReadBuffer;
ZeroMemory(&ReadBuffer, sizeof(canmsg_t));
BOOL bSuccess = ReadFile(hDevice, &ReadBuffer, 1, &dwRead,
0);
if(bSuccess)
{
if(dwRead == 1)
{
//SUCCESS
if(ReadBuffer.flags & MSG_EXT)
{
//Extended frame
}
else{
//Standard frame
}
if(ReadBuffer.flags & MSG_RTR)
{
//Remote frame
}
if(ReadBuffer.flags & MSG_SELF)
{
Seitenansicht 60
1 2 ... 56 57 58 59 60 61 62 63 64 65 66 ... 103 104

Kommentare zu diesen Handbüchern

Keine Kommentare