This commit is contained in:
Sem van der Hoeven
2023-11-12 23:41:03 +01:00
parent c4e590fea2
commit 4b93ace461
4 changed files with 88 additions and 27 deletions

View File

@@ -9,9 +9,9 @@ Program to create a car monitor display using:
#include "Arduino.h"
/* include UTFT library */
#include <UTFT.h>
#include "obd2_display.h"
// #include <DueTimer.h>
#include "obd2_timer.h"
#include "obd2_display.h"
#include "statemachine.h"
#define DEBUG 1
@@ -45,7 +45,7 @@ void __state_none(){ /* do nothing */}
state_t init_state =
{
.id = STATE_INIT,
.next = STATE_CAR_INFO,
.next = STATE_INIT,
.on_enter = &on_init_enter,
.on_run = &on_init_run,
.on_exit = &on_init_exit};
@@ -66,6 +66,14 @@ void on_init_enter()
{
display.clrScr();
Serial.println("Entering init state!");
// obd2_TC_init();
// Serial.println("init done");
// obd2_TC_set_RC_value(1000000); /* 1 million microseconds? */
// Serial.println("set RC");
// obd2_TC_start();
// Serial.print("Timer initialized and started");
// Timer3.attachInterrupt(timer_handler);
// Timer3.start(50000);
}
void on_init_run()
@@ -82,7 +90,6 @@ void on_init_exit()
void on_main_enter()
{
obd2_RTT_reset();
Serial.println("Entering main loop");
}
@@ -91,10 +98,22 @@ void on_main_run()
}
void RTT_Handler()
// void RTT_Handler()
// {
// flag = 0;
// obd2_RTT_reset();
// }
void TC0_Handler(void)
{
flag = 0;
obd2_RTT_reset();
#if (DEBUG == 1)
Serial.println("Interrupt!");
#endif
}
void timer_handler()
{
Serial.println("Timer yeet");
}
void setup()
@@ -119,25 +138,30 @@ void setup()
pinMode(LED_BUILTIN, OUTPUT);
obd2_TC_init();
// statemachine_register_state(&init_state, STATE_INIT);
// statemachine_register_state(&main_state, STATE_CAR_INFO);
// statemachine_init();
obd2_TC_init();
Serial.println("init done");
obd2_TC_set_RC_value(50000);
Serial.println("set RC");
obd2_TC_start();
Serial.print("Timer initialized and started");
// Timer3.attachInterrupt(timer_handler);
// Timer3.start(50000);
Serial.println("gagfadfgadfsd");
statemachine_register_state(&init_state, STATE_INIT);
statemachine_register_state(&main_state, STATE_CAR_INFO);
statemachine_init();
}
void loop()
{
statemachine_loop();
counter_temp++;
if (counter_temp == 50)
{
statemachine_next();
}
delay(100);
// statemachine_loop();
// Serial.println("Running");
// delay(10);
// while (Serial1.available())
// {
// char rec = Serial1.read();