mirror of
https://github.com/adrigongv23/G26---Telemetry-Software.git
synced 2026-05-25 12:31:27 +02:00
Se han eliminado todos los componentes del data_processor que no iban a ser usados y se ha comenzado a guardar en la SD algunos datos (por ahora, solo tiempo y temperatura. Los demas datos son procesados, pero aun no guardados)
52 lines
No EOL
1.3 KiB
C++
52 lines
No EOL
1.3 KiB
C++
|
|
#include <Arduino.h>
|
|
#include <SPI.h>
|
|
#include "SdFat.h"
|
|
#include "include/can.hpp"
|
|
#include "include/data_processor.hpp"
|
|
|
|
// --- CONFIGURACIÓN SD (VSPI) ---
|
|
#define SD_CS_PIN 5
|
|
#define SPI_CLOCK SD_SCK_MHZ(20)
|
|
SdFat sd;
|
|
SdFile logFile;
|
|
|
|
// Instancias
|
|
CAN can_interface;
|
|
DataProcessor processor;
|
|
|
|
void setup() {
|
|
Serial.begin(115200);
|
|
delay(1000);
|
|
Serial.println("\n--- G26 TELEMETRY: INICIO DE SISTEMA ---");
|
|
|
|
// 1. INICIALIZACIÓN SD
|
|
if (!sd.begin(SD_CS_PIN, SPI_CLOCK)) {
|
|
Serial.println("[FALLO] SD no detectada. El sistema continuará sin Datalogging.");
|
|
} else {
|
|
Serial.println("[OK] SD Montada.");
|
|
if (!logFile.exists("G26.csv")) {
|
|
if (logFile.open("G26.csv", O_RDWR | O_CREAT | O_AT_END)) {
|
|
// SOLO Cabeceras de lo que vamos a grabar ahora
|
|
logFile.println("Time,ECT");
|
|
logFile.close();
|
|
}
|
|
}
|
|
}
|
|
|
|
// 2. VINCULACIÓN
|
|
// Le damos al procesador acceso a la SD para que guarde cuando lleguen datos
|
|
processor.setLogSystem(&sd, &logFile);
|
|
can_interface.set_data_proccessor(&processor);
|
|
|
|
// 3. INICIO CAN
|
|
can_interface.start();
|
|
can_interface.start_listening_task(); // Escucha en Core 1 (Background)
|
|
|
|
Serial.println("[OK] Sistema ONLINE.");
|
|
}
|
|
|
|
void loop() {
|
|
|
|
delay(100);
|
|
} |