Select Git revision
dashController.cpp
dashController.cpp 847 B
//
// Created by Sil on 23/07/2019.
//
#include "dashController.h"
#include "checksum.h"
#define DASH_SERIAL_START_BYTE 0x55
uint16_t gRpm = 0;
uint16_t gWaterTemp = 0;
void dashBegin()
{
DASH_SERIAL.begin(DASH_SERIAL_BAUD_RATE);
}
void dashEcuSetRpm(uint16_t rpm)
{
gRpm = rpm;
}
void dashEcuSetWaterTemp(uint16_t waterTemp)
{
gWaterTemp = waterTemp;
}
void dashControllerProcess()
{
uint32_t currentMs = millis();
static uint32_t lastSerialMs = 0;
if ((currentMs - lastSerialMs) >= DASH_REFRESH_MS) {
static uint8_t serialPayload[6];
serialPayload[0] = DASH_SERIAL_START_BYTE;
memcpy(&(serialPayload[1]), &gWaterTemp, 2);
memcpy(&(serialPayload[3]), &gRpm, 2);
serialPayload[5] = crc_8(&(serialPayload[1]), 4);
DASH_SERIAL.write(serialPayload, 6);
}
}