From 706e582e63d16054a92fd99111916f0cb48fc90f Mon Sep 17 00:00:00 2001 From: Frank Voorburg Date: Wed, 23 Jul 2014 08:27:06 +0000 Subject: [PATCH] - Added automatic bus off recovery to the Peak CAN communication interface for Microboot. git-svn-id: https://svn.code.sf.net/p/openblt/code/trunk@99 5dc33758-31d5-4daf-9ae8-b24bf3d40d73 --- Host/Pcan_usb.dll | Bin 90112 -> 82944 bytes .../interfaces/can/peak/PCANdrvD.pas | 16 +- .../interfaces/can/peak/Pcan_usb.pas | 146 +++++++++++++----- .../interfaces/can/peak/openblt_can_peak.dpr | 1 + Host/openblt_can_peak.dll | Bin 396800 -> 396800 bytes 5 files changed, 126 insertions(+), 37 deletions(-) diff --git a/Host/Pcan_usb.dll b/Host/Pcan_usb.dll index 25a0b7fc36ba44bf9a9642ea15e05a0eac0f94e9..cfd024d54ceed2f0fb2b4c0f74ac16295167d7da 100644 GIT binary patch literal 82944 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%0DY(RP9w0RXM6c)pFIts;5*ht6o>_R_#+A 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 diff --git a/Host/Source/MicroBoot/interfaces/can/peak/PCANdrvD.pas b/Host/Source/MicroBoot/interfaces/can/peak/PCANdrvD.pas index f3928d13..2eb3dae5 100644 --- a/Host/Source/MicroBoot/interfaces/can/peak/PCANdrvD.pas +++ b/Host/Source/MicroBoot/interfaces/can/peak/PCANdrvD.pas @@ -357,6 +357,7 @@ begin if CAN_Init(Baudcode, MsgType) <> CAN_ERR_OK then Exit; + //-------------------------- open the acceptance filter -------------------------------- if CAN_ResetFilter <> CAN_ERR_OK then begin @@ -470,8 +471,19 @@ begin // submit the transmit request if CAN_Write(msg) <> CAN_ERR_OK then begin - Result := False; - exit; + // the Peak CAN interface has a bug because if it is the only node on the bus + // transmitting a message, it will actually go in bus off, which is not allowed + // according to the CAN protocol. this scenario can be resolved by re-initializing + // the CAN interface. + if (CAN_Status and CAN_ERR_BUSOFF) = CAN_ERR_BUSOFF then + begin + Disconnect; + if not Connect then + begin + Result := False; + exit; + end; + end; end; //---------------- process transmission confirmation -------------------------- diff --git a/Host/Source/MicroBoot/interfaces/can/peak/Pcan_usb.pas b/Host/Source/MicroBoot/interfaces/can/peak/Pcan_usb.pas index f62f7ef3..2c7a4259 100644 --- a/Host/Source/MicroBoot/interfaces/can/peak/Pcan_usb.pas +++ b/Host/Source/MicroBoot/interfaces/can/peak/Pcan_usb.pas @@ -2,20 +2,16 @@ // PCAN-Light // PCAN_USB.pas // -// Version 1.5 +// Version 2.x // // ~~~~~~~~~~ // -// Basic Idea: -// -// ~~~~~~~~~~ -// -// Definition of the PCAN-Light API. -// The Driver support a Hardware and a Software who want to communicate with CAN-busses +// Definition of the PCAN-Light API. +// The Driver support a Hardware and a Software who want to communicate with CAN-busses // // ~~~~~~~~~~~~ // -// PCAN-Light -API +// PCAN-Light-API // // ~~~~~~~~~~~~ // @@ -24,21 +20,25 @@ // - CAN_Status() // - CAN_Write(var MsgBuff: TPCANMsg) // - CAN_Read(var MsgBuff: TPCANMsg) +// - CAN_ReadEx(var MsgBuff: TPCANMsg; var RcvTime: TPCANTimestamp) // - CAN_VersionInfo(lpszTextBuff: PChar) +// - CAN_DLLVersionInfo(lpszTextBuff: PChar) +// - CAN_SpecialFunktion(distributorcode: LongWord; codenumber: Integer) // - CAN_ResetClient() // - CAN_MsgFilter(FromID, ToID: LongWord; _Type: Integer) // - CAN_ResetFilter() -// - SetUSBDeviceNr(DevNum: Longint) -// - GetUSBDeviceNr(var DevNum: Longint) +// - SetUSBDeviceNr(DevNum: Integer) +// - GetUSBDeviceNr(var DevNum: Integer) +// - CAN_SetRcvFunc(hEvent: THandle) // // ------------------------------------------------------------------ // Author : Hoppe, Wilhelm -// Modified By: Wagner (13.08.2008) +// Modified By: Wagner (29.09.2009) // -// Sprache: PASCAL OO +// Language: PASCAL OO // ------------------------------------------------------------------ // -// Copyright (C) 1999-2006 PEAK-System Technik GmbH, Darmstadt +// Copyright (C) 1999-2009 PEAK-System Technik GmbH, Darmstadt // unit pcan_usb; @@ -79,23 +79,30 @@ const // Error codes (bit code) // - CAN_ERR_OK = $0000; // No error - CAN_ERR_XMTFULL = $0001; // Transmit buffer in CAN controller is full - CAN_ERR_OVERRUN = $0002; // CAN controller was read too late - CAN_ERR_BUSLIGHT = $0004; // Bus error: an error counter reached the 'light' limit - CAN_ERR_BUSHEAVY = $0008; // Bus error: an error counter reached the 'heavy' limit - CAN_ERR_BUSOFF = $0010; // Bus error: the CAN controller is in bus-off state - CAN_ERR_QRCVEMPTY = $0020; // Receive queue is empty - CAN_ERR_QOVERRUN = $0040; // Receive queue was read too late - CAN_ERR_QXMTFULL = $0080; // Transmit queue is full - CAN_ERR_REGTEST = $0100; // Test of the CAN controller hardware registers failed (no hardware found) - CAN_ERR_NOVXD = $0200; // Driver not loaded - CAN_ERR_RESOURCE = $2000; // Resource (FIFO, Client, timeout) cannot be created - CAN_ERR_ILLPARAMTYPE = $4000; // Invalid parameter - CAN_ERR_ILLPARAMVAL = $8000; // Invalid parameter value - CAN_ERRMASK_ILLHANDLE = $1C00; // Mask for all handle errors - CAN_ERR_ANYBUSERR = (CAN_ERR_BUSLIGHT or CAN_ERR_BUSHEAVY or CAN_ERR_BUSOFF); - // All further error conditions <> 0 please ask PEAK when required.......internal driver failure ........ + CAN_ERR_OK = $0000; // No error + CAN_ERR_XMTFULL = $0001; // Transmit buffer in CAN controller is full + CAN_ERR_OVERRUN = $0002; // CAN controller was read too late + CAN_ERR_BUSLIGHT = $0004; // Bus error: an error counter reached the 'light' limit + CAN_ERR_BUSHEAVY = $0008; // Bus error: an error counter reached the 'heavy' limit + CAN_ERR_BUSOFF = $0010; // Bus error: the CAN controller is in bus-off state + CAN_ERR_QRCVEMPTY = $0020; // Receive queue is empty + CAN_ERR_QOVERRUN = $0040; // Receive queue was read too late + CAN_ERR_QXMTFULL = $0080; // Transmit queue ist full + CAN_ERR_REGTEST = $0100; // Test of the CAN controller hardware registers failed (no hardware found) + CAN_ERR_NOVXD = $0200; // Driver not loaded + CAN_ERR_NODRIVER = $0200; // Driver not loaded + CAN_ERRMASK_ILLHANDLE=$1C00; // Mask for all handle errors + CAN_ERR_HWINUSE = $0400; // Hardware already in use by a Net + CAN_ERR_NETINUSE = $0800; // a Client is already connected to the Net + CAN_ERR_ILLHW = $1400; // Hardware handle is invalid + CAN_ERR_ILLNET = $1800; // Net handle is invalid + CAN_ERR_ILLCLIENT = $1C00; // Client handle is invalid + CAN_ERR_RESOURCE = $2000; // Resource (FIFO, Client, timeout) cannot be created + CAN_ERR_ILLPARAMTYPE = $4000; // Invalid parameter + CAN_ERR_ILLPARAMVAL = $8000; // Invalid parameter value + CAN_ERR_UNKNOWN = $10000; // Unknown error + CAN_ERR_ANYBUSERR = (CAN_ERR_BUSLIGHT or CAN_ERR_BUSHEAVY or CAN_ERR_BUSOFF); + type // CAN Message @@ -107,6 +114,15 @@ type DATA: array[0..7] of Byte; // Data 0 .. 7 end; + // Timestamp of a receive/transmit event + // Total microseconds = micros + 1000 * millis + 0xFFFFFFFF * 1000 * millis_overflow + // + TPCANTimestamp = record + millis: LongWord; // Base-value: milliseconds: 0.. 2^32-1 + millis_overflow: Word; // Roll-arounds of millis + micros: Word; // Microseconds: 0..999 + end; + /////////////////////////////////////////////////////////////////////////////// // CAN_Init() // This function make the following: @@ -123,7 +139,7 @@ type // Possible Errors: NOVXD ILLHW REGTEST RESOURCE // function CAN_Init(wBTR0BTR1: Word; - CANMsgType: Integer): LongWord; stdcall; + CANMsgType: Integer): LongWord; stdcall; /////////////////////////////////////////////////////////////////////////////// // CAN_Close() @@ -176,6 +192,37 @@ function CAN_Write(var MsgBuff: TPCANMsg): LongWord; stdcall; // function CAN_Read(var MsgBuff: TPCANMsg): LongWord; stdcall; +/////////////////////////////////////////////////////////////////////////////// +// CAN_ReadEx() +// This function get the next message or the next error from the Receive Queue of +// the CAN Hardware and the time when the message arrived. +// REMARK: +// - Check always the type of the received Message (MSGTYPE_STANDARD,MSGTYPE_RTR, +// MSGTYPE_EXTENDED,MSGTYPE_STATUS) +// - The function will return ERR_OK always that you receive a CAN message successfully +// although if the messages is a MSGTYPE_STATUS message. +// - When a MSGTYPE_STATUS mesasge is got, the ID and Length information of the message +// will be treated as indefined values. Actually information of the received message +// should be interpreted using the first 4 data bytes as follow: +// * Data0 Data1 Data2 Data3 Kind of Error +// 0x00 0x00 0x00 0x02 CAN_ERR_OVERRUN 0x0002 CAN Controller was read to late +// 0x00 0x00 0x00 0x04 CAN_ERR_BUSLIGHT 0x0004 Bus Error: An error counter limit reached (96) +// 0x00 0x00 0x00 0x08 CAN_ERR_BUSHEAVY 0x0008 Bus Error: An error counter limit reached (128) +// 0x00 0x00 0x00 0x10 CAN_ERR_BUSOFF 0x0010 Bus Error: Can Controller went "Bus-Off" +// - If a CAN_ERR_BUSOFF status message is received, the CAN Controller must to be +// initialized again using the Init() function. Otherwise, will be not possible +// to send/receive more messages. +// - The message will be written to 'msgbuff'. +// Since Version 2.x the Ext. Version is available - new Parameter: +// - Receive timestamp +// +// Possible Errors: NOVXD QRCVEMPTY +// +function CAN_ReadEx( + var MsgBuff: TPCANMsg; + var RcvTime: TPCANTimestamp + ): LongWord; stdcall; + /////////////////////////////////////////////////////////////////////////////// // CAN_VersionInfo() // This function get the Version and copyright of the hardware as text @@ -187,6 +234,17 @@ function CAN_VersionInfo( lpszTextBuff: PChar ): LongWord; stdcall; +/////////////////////////////////////////////////////////////////////////////// +// CAN_DLLVersionInfo() +// This function is used to get the Version and copyright of the DLL as +// text (max. 255 characters) +// +// Possible Errors: -1 for NULL-Pointer parameters :-) +// +function CAN_DLLVersionInfo( + lpszTextBuff: PChar + ): LongWord; stdcall; + /////////////////////////////////////////////////////////////////////////////// // CAN_SpecialFunktion() // This function is an special function to be used "ONLY" for distributors @@ -241,7 +299,7 @@ function CAN_ResetFilter: LongWord; stdcall; // // Possible Errors: NOVXD ILLHW ILLPARAMTYPE ILLPARAMVAL REGTEST // -function SetUSBDeviceNr(DevNum: Longint): LongWord; stdcall; +function SetUSBDeviceNr(DevNum: LongWord): LongWord; stdcall; ////////////////////////////////////////////////////////////////////////////// // GetUSBDeviceNr() @@ -249,7 +307,16 @@ function SetUSBDeviceNr(DevNum: Longint): LongWord; stdcall; // // Possible Errors: NOVXD ILLHW ILLPARAMTYPE // -function GetUSBDeviceNr(var DevNum: Longint): LongWord; stdcall; +function GetUSBDeviceNr(var DevNum: LongWord): LongWord; stdcall; + +/////////////////////////////////////////////////////////////////////////////// +// CAN_SetRcvEvent() +// This function is used to set the Event for the Event Handler +// +// Possible Errors: ILLCLIENT ILLPARAMTYPE ILLPARAMVAL NOVXD +// +function CAN_SetRcvEvent(hEvent: LongInt): LongWord; stdcall; + implementation @@ -272,9 +339,15 @@ external DLL_Name; function CAN_Read(var MsgBuff: TPCANMsg): LongWord; stdcall; external DLL_Name; +function CAN_ReadEx(var MsgBuff: TPCANMsg; var RcvTime: TPCANTimestamp): LongWord; stdcall; +external DLL_NAME; + function CAN_VersionInfo(lpszTextBuff: PChar): LongWord; stdcall; external DLL_Name; +function CAN_DLLVersionInfo(lpszTextBuff: PChar): LongWord; stdcall; +external DLL_Name; + function CAN_SpecialFunktion(distributorcode: LongWord; codenumber: Integer): LongWord; stdcall; external DLL_Name; @@ -287,10 +360,13 @@ external DLL_Name; function CAN_ResetFilter: LongWord; stdcall; external DLL_Name; -function SetUSBDeviceNr(DevNum: Longint): LongWord; stdcall; +function SetUSBDeviceNr(DevNum: LongWord): LongWord; stdcall; external DLL_Name; -function GetUSBDeviceNr(var DevNum: Longint): LongWord; stdcall; +function GetUSBDeviceNr(var DevNum: LongWord): LongWord; stdcall; +external DLL_Name; + +function CAN_SetRcvEvent(hEvent: LongInt):LongWord; stdcall; external DLL_Name; end. diff --git a/Host/Source/MicroBoot/interfaces/can/peak/openblt_can_peak.dpr b/Host/Source/MicroBoot/interfaces/can/peak/openblt_can_peak.dpr index 88a7e0c2..0e53e923 100644 --- a/Host/Source/MicroBoot/interfaces/can/peak/openblt_can_peak.dpr +++ b/Host/Source/MicroBoot/interfaces/can/peak/openblt_can_peak.dpr @@ -313,6 +313,7 @@ begin MbiCallbackOnProgress(progress); //---------------- next clear the memory regions -------------------------------------- + // update the user info MbiCallbackOnInfo('Erasing memory...'); diff --git a/Host/openblt_can_peak.dll b/Host/openblt_can_peak.dll index 7bf7aa12eb6eeb8c47b63808ea4e757f9b9a6857..431019bcb6f48b78abe60255a8b572b624f9534d 100644 GIT binary patch delta 16577 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 delta 16350 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