Hallo,
ich habe eine LWZ 404 Wärmepumpe von Stiebel Eltron.
Ich möchte den CAN Bus auslesen und die Daten weiterverarbeiten.
Ausgelesen bekomme ich den CAN Bus bereits, aber die Daten sagen mir leider nicht besonders viel.
Ich möchte die hexadezimalen Zahlen zunächst in dezimale Zahlen umwandeln.
Gegoogelt habe ich natürlich schon, aber so richtig schlau bin ich nicht daraus geworden.
Dies ist der Sketch:
#include <mcp_can.h>
#include <SPI.h>
long unsigned int rxId;
unsigned char len = 0;
unsigned char rxBuf[8];
char msgString[128]; // Array to store serial string
#define CAN0_INT 2 // Set INT to pin 2
MCP_CAN CAN0(10); // Set CS to pin 10
void setup()
{
Serial.begin(9600);
if (CAN0.begin(MCP_ANY, CAN_20KBPS, MCP_8MHZ) == CAN_OK)
Serial.println("MCP2515 Initialized Successfully!");
else
Serial.println("Error Initializing MCP2515...");
CAN0.setMode(MCP_NORMAL); // Set operation mode to normal so the MCP2515 sends acks to received data.
pinMode(CAN0_INT, INPUT); // Configuring pin for /INT input
Serial.println("MCP2515 Library Receive Example...");
}
void loop()
{
if (!digitalRead(CAN0_INT)) // If CAN0_INT pin is low, read receive buffer
{
CAN0.readMsgBuf(&rxId, &len, rxBuf); // Read data: len = data length, buf = data byte(s)
if ((rxId & 0x80000000) == 0x80000000) // Determine if ID is standard (11 bits) or extended (29 bits)
sprintf(msgString, "Extended ID: 0x%.8lX DLC: %1d Data:", (rxId & 0x1FFFFFFF), len);
else
sprintf(msgString, "Standard ID: 0x%.3lX DLC: %1d Data:", rxId, len);
Serial.print(msgString);
if ((rxId & 0x40000000) == 0x40000000) { // Determine if message is a remote request frame.
sprintf(msgString, " REMOTE REQUEST FRAME");
Serial.print(msgString);
} else {
for (byte i = 0; i < len; i++) {
sprintf(msgString, " 0x%.2X", rxBuf[i]);
Serial.print(msgString);
}
}
Serial.println();
}
}
und hier sind einige ausgelesene Beispieldaten:
Entering Configuration Mode Successful!
Setting Baudrate Successful!
MCP2515 Initialized Successfully!
MCP2515 Library Receive Example...
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69F DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0E 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0E 0x01 0xF2
Standard ID: 0x69E DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x0F 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0F 0x00 0xF1
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69F DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0E 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0E 0x01 0xF2
Standard ID: 0x402 DLC: 7 Data: 0x60 0x01 0xFA 0x00 0x11 0x00 0xE4
Standard ID: 0x402 DLC: 7 Data: 0x60 0x01 0xFA 0x00 0x75 0xFD 0xA8
Standard ID: 0x69E DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x0F 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0F 0x00 0xF1
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x180 DLC: 7 Data: 0xD0 0x3C 0xFA 0x01 0x25 0x16 0x00
Standard ID: 0x180 DLC: 7 Data: 0xD0 0x3C 0xFA 0x01 0x26 0x13 0x00
Standard ID: 0x180 DLC: 7 Data: 0xD0 0x3C 0xFA 0x00 0x01 0x00 0x00
Standard ID: 0x180 DLC: 7 Data: 0xD0 0x3C 0xFA 0x01 0x24 0x16 0x00
Standard ID: 0x180 DLC: 7 Data: 0xD0 0x3C 0xFA 0x01 0x76 0x00 0x01
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0C 0x00 0x3F
Standard ID: 0x69F DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0E 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0E 0x01 0xF2
Standard ID: 0x69E DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x0F 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0F 0x00 0xF1
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69F DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0E 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0E 0x01 0xF3
Standard ID: 0x69E DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x0F 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0F 0x00 0xF3
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69F DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0E 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0E 0x01 0xF3
Standard ID: 0x180 DLC: 7 Data: 0xD0 0x3C 0xFA 0x01 0x26 0x14 0x00
Standard ID: 0x69E DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x0F 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0F 0x00 0xF1
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69F DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x11 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x11 0x00 0xD2
Standard ID: 0x69F DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0E 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1F 0xFA 0x00 0x0E 0x01 0xF2
Standard ID: 0x69E DLC: 7 Data: 0x31 0x00 0xFA 0x00 0x0C 0x00 0xB0
Standard ID: 0x180 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0C 0x00 0x40
Standard ID: 0x69E DLC: 7 Data: 0x61 0x01 0xFA 0x00 0x0F 0x00 0xB0
Standard ID: 0x301 DLC: 7 Data: 0xD2 0x1E 0xFA 0x00 0x0F 0x00 0xF1
Kann mir jemand helfen?
Vielen Dank und beste Grüße,
Chris