Skip to main content
Home
datazap.me
Menu
  • FAQ
  • Donate
  • Contact
  • Create Account
  • Login
Create Account
Login
userhypearmor
09/27/2016
4.0
  • 91 Octane
09/27/2016
Options
  • View
08/05/2016
datalog file 829
08/05/2016
Options
  • View
The Quest for AFR and Timing
#include <SPI.h> #include "mcp_can.h" #include <stdio.h> /* printf */ #include <stdlib.h> /* strtol */ const int SPI_CS_PIN = 9; MCP_CAN CAN(SPI_CS_PIN); void setup() { Serial.begin(115200); while (CAN_OK != CAN.begin(CAN_500KBPS)) { delay(100); } // CAN_EXTID_REMOTE //CAN.init_Filt(0, CAN_EXTID, 0x1FFFFFFF); //CAN.init_Mask(0, CAN_EXTID, 0x1FFFFFFF); } int ticks = 0; const int size = 17; double buf[size]; unsigned char rxBuf[8]; long unsigned int rxId; unsigned char len = 0; void loop() { //CAN.readMsgBuf(&len, rxBuf); //rxId = CAN.getCanId(); CAN.readMsgBufID(&rxId, &len, rxBuf); if (CAN.checkError() == false) { Serial.println("CAN ERROR"); } if (CAN.isExtendedFrame()) { Serial.println("Extended Frame"); } /*if (rxId >= 300 && rxId <= 400) { Serial.println(rxId); }*/ if (ticks == 1000) { ticks = 0; for (int i =0; i < size; i++) { Serial.print(buf[i]); if (i != size - 1) { Serial.print(','); } } Serial.println(); } ticks++; if (rxId == 321) { if (rxBuf[5] > 130) { buf[0] = (rxBuf[4] + ((rxBuf[5] - 128) * 256)); } else { buf[0] = (rxBuf[4] + (rxBuf[5] * 256)); } buf[14] = (rxBuf[4] % 256); buf[15] = (rxBuf[5] / 256) + 0x80; buf[12] = (rxBuf[2] + ((rxBuf[3]-37) * 256)) / 2048; } else if (rxId == 320) { buf[1] = rxBuf[0]; // accel pos } else if (rxId == 209) { buf[2] = rxBuf[2]; // brake pos buf[3] = (rxBuf[0] + (rxBuf[1] * 256)); // log // arf fine? log again if (rxBuf[7] > 14) { buf[4] = rxBuf[7] - 256; } else { buf[4] = rxBuf[7]; } } else if (rxId == 864) { buf[5] = rxBuf[4]; // load buf[6] = rxBuf[0] + (rxBuf[1] * 256); // log } else if (rxId == 322) { if (rxBuf[1] > 130) { //buf[7] = (rxBuf[0] + ((((100/128) * rxBuf[1]) - 100) * 256)); } else { //buf[7] = (rxBuf[0] + (((100/128) * rxBuf[1]) * 256)); } //=IF([@8]>=166, ((100/128)*[@8])-100,(100/128)*[@8]) if (rxBuf[1] >= 166) { buf[8] = ((100/128) * rxBuf[1]) - 100; } else { buf[8] = (100/128) * rxBuf[1]; } } else if (rxId == 324) { buf[9] = rxBuf[2]; // log again } else if (rxId == 211) { buf[10] = rxBuf[4]; // speeds up with road speed and or rpm buf[13] = rxBuf[5]; buf[11] = rxBuf[7]; // clutch slip? } else if (rxId == 865) { buf[16] = rxBuf[0]; // gear } } /********************************************************************************************************* END FILE *********************************************************************************************************/
08/05/2016
Options
  • View
07/23/2016
Eng data
07/23/2016
Options
  • View
07/17/2016
Long datafile
07/17/2016
Options
  • View
  • ‹
  • …
  • 5
  • 6
  • 7
  • …
  • ›
  • datazap.me  
  • Login
  • Create Account
  • FAQ
  • Donate
  • Contact