Fixes for temp display and start defines for engine load

This commit is contained in:
SemvdH
2025-05-04 22:08:24 +02:00
parent 48933e2bab
commit 34b287f871
4 changed files with 118 additions and 32 deletions

View File

@@ -0,0 +1,29 @@
// SixteenSegment48x72Num.c
// Font type : Numeric (10 characters)
// Font size : 48x72 pixels
// Memory usage : 4324 bytes
#if defined(__AVR__)
#include <avr/pgmspace.h>
#define fontdatatype const uint8_t
#elif defined(__PIC32MX__)
#define PROGMEM
#define fontdatatype const unsigned char
#elif defined(__arm__)
#define PROGMEM
#define fontdatatype const unsigned char
#endif
fontdatatype SixteenSegment48x72Num[4324] PROGMEM={
0x30,0x48,0x30,0x0A,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x0C,0xFF,0xF8,0x1F,0xFF,0x30,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x00,0x00,0x06,0xFC,0x3F,0x00,0x00,0x00,0x0E,0xFC,0x3F,0x00,0x00,0x00,0x0E,0xFC,0x3F,0x00,0x00,0x00,0x1E,0xFC,0x3F,0x00,0x00,0x00,0x1E,0xFC,0x3F,0x00,0x00,0x00,0x3E,0xFC,0x3F,0x00,0x00,0x00,0x3E,0xFC,0x3F,0x00,0x00,0x00,0x7E,0xFC,0x3F,0x00,0x00,0x00,0xFC,0xFC,0x3F,0x00,0x00,0x00,0xFC,0xFC,0x3F,0x00,0x00,0x01,0xF8,0xFC,0x3F,0x00,0x00,0x01,0xF0,0xFC,0x3F,0x00,0x00,0x03,0xF0,0xFC,0x3F,0x00,0x00,0x03,0xE0,0xFC,0x3F,0x00,0x00,0x07,0xE0,0xFC,0x3F,0x00,0x00,0x07,0xC0,0xFC,0x3F,0x00,0x00,0x0F,0xC0,0xFC,0x3F,0x00,0x00,0x0F,0x80,0xFC,0x3F,0x00,0x00,0x0F,0x80,0xFC,0x3F,0x00,0x00,0x0F,0x00,0xFC,0x3F,0x00,0x00,0x0E,0x00,0xFC,0x3F,0x00,0x00,0x0E,0x00,0xFC,0x3F,0x00,0x00,0x0C,0x00,0xFC,0x1F,0x00,0x00,0x00,0x00,0x7C,0x1E,0x00,0x00,0x00,0x00,0x38,0x0C,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x30,0x0E,0x00,0x00,0x00,0x00,0x38,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x30,0x00,0x00,0xFC,0x3F,0x00,0x70,0x00,0x00,0xFC,0x3F,0x00,0x70,0x00,0x00,0xFC,0x3F,0x00,0xF0,0x00,0x00,0xFC,0x3F,0x00,0xF0,0x00,0x00,0xFC,0x3F,0x01,0xF0,0x00,0x00,0xFC,0x3F,0x03,0xF0,0x00,0x00,0xFC,0x3F,0x03,0xF0,0x00,0x00,0xFC,0x3F,0x07,0xE0,0x00,0x00,0xFC,0x3F,0x07,0xC0,0x00,0x00,0xFC,0x3F,0x0F,0xC0,0x00,0x00,0xFC,0x3F,0x0F,0x80,0x00,0x00,0xFC,0x3F,0x1F,0x80,0x00,0x00,0xFC,0x3F,0x1F,0x00,0x00,0x00,0xFC,0x3F,0x3F,0x00,0x00,0x00,0xFC,0x3F,0x7E,0x00,0x00,0x00,0xFC,0x3F,0x7E,0x00,0x00,0x00,0xFC,0x3F,0x7C,0x00,0x00,0x00,0xFC,0x3F,0x78,0x00,0x00,0x00,0xFC,0x3F,0x78,0x00,0x00,0x00,0xFC,0x3F,0x70,0x00,0x00,0x00,0xFC,0x3F,0x70,0x00,0x00,0x00,0xFC,0x3F,0x60,0x00,0x00,0x00,0xFC,0x1E,0x00,0x00,0x00,0x00,0x78,0x0C,0xFF,0xF8,0x1F,0xFF,0x30,0x05,0xFF,0xFC,0x3F,0xFF,0x90,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x00,0x00,0x00,0x00,0xFF,0xFC,0x00,0x00,0x00,0x03,0xFF,0xFE,0x00,0x00,0x00,0x03,0xFF,0xFE,0x00,0x00,0x00,0x01,0xFF,0xFC,0x00,0x00,0x00,0x00,0xFF,0xF9,0x80,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0xFF,0xF9,0x9F,0xFF,0x00,0x01,0xFF,0xFC,0xBF,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 1
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x30,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0xFF,0xF8,0x1F,0xFF,0x38,0x01,0xFF,0xFC,0x3F,0xFF,0xB0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x0D,0xFF,0xFC,0x3F,0xFF,0x80,0x0E,0xFF,0xF8,0x1F,0xFF,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x0C,0xFF,0xF8,0x1F,0xFF,0x00,0x05,0xFF,0xFC,0x3F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 2
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x30,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0xFF,0xF8,0x1F,0xFF,0x38,0x01,0xFF,0xFC,0x3F,0xFF,0xB0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0xB0,0x00,0xFF,0xF8,0x1F,0xFF,0x38,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xFF,0xF8,0x1F,0xFF,0x30,0x01,0xFF,0xFC,0x3F,0xFF,0x90,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 3
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x30,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x1F,0x00,0x00,0x00,0x00,0x7C,0x1E,0xFF,0xF8,0x1F,0xFF,0x38,0x0D,0xFF,0xFC,0x3F,0xFF,0xB0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0xB0,0x00,0xFF,0xF8,0x1F,0xFF,0x38,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 4
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x0C,0xFF,0xF8,0x1F,0xFF,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x1E,0xFF,0xF8,0x1F,0xFF,0x00,0x0D,0xFF,0xFC,0x3F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0xB0,0x00,0xFF,0xF8,0x1F,0xFF,0x38,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xFF,0xF8,0x1F,0xFF,0x30,0x01,0xFF,0xFC,0x3F,0xFF,0x90,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 5
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x0C,0xFF,0xF8,0x1F,0xFF,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x1E,0xFF,0xF8,0x1F,0xFF,0x00,0x0D,0xFF,0xFC,0x3F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x0D,0xFF,0xFC,0x3F,0xFF,0xB0,0x0E,0xFF,0xF8,0x1F,0xFF,0x38,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x1E,0x00,0x00,0x00,0x00,0x78,0x0C,0xFF,0xF8,0x1F,0xFF,0x30,0x05,0xFF,0xFC,0x3F,0xFF,0x90,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 6
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x30,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 7
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x0C,0xFF,0xF8,0x1F,0xFF,0x30,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x1F,0x00,0x00,0x00,0x00,0x7C,0x1E,0xFF,0xF8,0x1F,0xFF,0x38,0x0D,0xFF,0xFC,0x3F,0xFF,0xB0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x0D,0xFF,0xFC,0x3F,0xFF,0xB0,0x0E,0xFF,0xF8,0x1F,0xFF,0x38,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x1E,0x00,0x00,0x00,0x00,0x78,0x0C,0xFF,0xF8,0x1F,0xFF,0x30,0x05,0xFF,0xFC,0x3F,0xFF,0x90,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 8
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x0F,0xFE,0x00,0x00,0xFF,0xFC,0x1F,0xFF,0x80,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x0C,0xFF,0xF8,0x1F,0xFF,0x30,0x1E,0x00,0x00,0x00,0x00,0x78,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x3F,0x00,0x00,0x00,0x00,0xFC,0x1F,0x00,0x00,0x00,0x00,0x7C,0x1E,0xFF,0xF8,0x1F,0xFF,0x38,0x0D,0xFF,0xFC,0x3F,0xFF,0xB0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0xB0,0x00,0xFF,0xF8,0x1F,0xFF,0x38,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xFF,0xF8,0x1F,0xFF,0x30,0x01,0xFF,0xFC,0x3F,0xFF,0x90,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x03,0xFF,0xFE,0x7F,0xFF,0xC0,0x01,0xFF,0xFC,0x3F,0xFF,0x80,0x00,0xFF,0xF8,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 9
};

View File

@@ -3,7 +3,7 @@
void bar_draw_horizontal(int start_x, int start_y, int width, int height, int value, int max_value, uint color, char fill_outline, UTFT *display)
{
display->setColor(color);
int bar_width = (int)((float)value / (float)max_value * width);
int bar_width = (int)(((float)value / (float)max_value) * (float)width);
if (fill_outline)
{
display->drawRect(start_x, start_y, start_x + width, start_y + height);
@@ -14,7 +14,7 @@ void bar_draw_horizontal(int start_x, int start_y, int width, int height, int va
void bar_draw_horizontal(int start_x, int start_y, int width, int height, int value, int max_value, byte r, byte g, byte b, char fill_outline, UTFT *display)
{
display->setColor(r,g,b);
int bar_width = (int)((float)value / (float)max_value * width);
int bar_width = (int)(((float)value / (float)max_value) * (float)width);
if (fill_outline)
{
display->drawRect(start_x, start_y, start_x + width, start_y + height);
@@ -25,7 +25,7 @@ void bar_draw_horizontal(int start_x, int start_y, int width, int height, int va
void bar_draw_vertical(int start_x, int start_y, int width, int height, int value, int max_value, uint color, char fill_outline, UTFT *display)
{
display->setColor(color);
int bar_height = (int)((float)value / (float)max_value * height);
int bar_height = (int)(((float)value / (float)max_value) * (float)height);
if (fill_outline)
{
display->drawRect(start_x, start_y, start_x + width, start_y + height);
@@ -36,7 +36,7 @@ void bar_draw_vertical(int start_x, int start_y, int width, int height, int valu
void bar_draw_vertical(int start_x, int start_y, int width, int height, int value, int max_value, byte r, byte g, byte b, char fill_outline, UTFT *display)
{
display->setColor(r,g,b);
int bar_height = (int)((float)value / (float)max_value * height);
int bar_height = (int)(((float)value / (float)max_value) * (float)height);
if (fill_outline)
{
display->drawRect(start_x, start_y, start_x + width, start_y + height);

View File

@@ -10,6 +10,9 @@
#define OBD2_SLOW_VALUES_QUERY_INTERVAL_MS 5000
#define SCREEN_WIDTH 480
#define SCREEN_HEIGHT 320
#define INIT_TEXT_WIDTH 15
#define INIT_PERCENTAGE_WIDTH 4
#define FLAG_INIT_UPDATE_TEXT_POS 0x01
@@ -31,7 +34,7 @@
#define RAM_TEXT_WIDTH 9
#define DEV_LABEL_LENGTH 10
#define COLOR_ORANGE 255, 96, 33
#define COLOR_LIGHT_GRAY 217, 217, 217
/****************************************/
/* x and y positions for several gauges */
@@ -42,12 +45,12 @@
#define TEMP_BOX_Y_START TEMP_BOX_PADDING
#define TEMP_BOX_CONTENT_WIDTH 180 // witdth of the box to calculate the content in it
#define TEMP_BOX_WIDTH TEMP_BOX_CONTENT_WIDTH - TEMP_BOX_PADDING // width of the box to draw the outline
#define TEMP_BOX_HEIGHT 210 - TEMP_BOX_PADDING
#define TEMP_BOX_COLOR VGA_GRAY
#define TEMP_BOX_HEIGHT 193 - TEMP_BOX_PADDING
#define TEMP_BOX_COLOR VGA_TEAL
#define TEMP_BOX_BAR_AMOUNT 4 // amount of bars to display in the temperature box
#define TEMP_BOX_BAR_PADDING 2
#define TEMP_BOX_BAR_HEIGHT (((TEMP_BOX_HEIGHT) / ((TEMP_BOX_BAR_AMOUNT) * 2)) - TEMP_BOX_BAR_PADDING)
#define TEMP_BOX_BAR_HEIGHT 23
#define TEMP_BOX_BAR_WIDTH TEMP_BOX_CONTENT_WIDTH - (TEMP_BOX_BAR_PADDING * 4)
#define TEMP_BOX_COOLANT_POS 0
@@ -65,4 +68,11 @@
#define TEMP_BOX_OIL_TEXT_Y_START TEMP_BOX_Y_START + TEMP_BOX_BAR_PADDING + (2 * TEMP_BOX_OIL_POS * TEMP_BOX_BAR_HEIGHT) + 2
#define TEMP_BOX_OIL_BAR_Y_START TEMP_BOX_Y_START + TEMP_BOX_BAR_PADDING + ((2 * TEMP_BOX_OIL_POS * TEMP_BOX_BAR_HEIGHT) + TEMP_BOX_BAR_HEIGHT)
/* box that holds the engine load */
#define ENGINE_LOAD_BOX_X_START TEMP_BOX_X_START
#define ENGINE_LOAD_BOX_Y_START TEMP_BOX_Y_START + TEMP_BOX_HEIGHT + TEMP_BOX_PADDING
#define ENGINE_LOAD_BOX_WIDTH TEMP_BOX_WIDTH
#define ENGINE_LOAD_BOX_HEIGHT (SCREEN_HEIGHT - TEMP_BOX_HEIGHT - TEMP_BOX_PADDING)
#define ENGINE_LOAD_BOX_COLOR VGA_TEAL
#endif // !DEFINES_H

View File

@@ -66,9 +66,10 @@ char update_slow = 0;
obd2_elm327_t elm327;
int bar_1_x = 0;
int bar_2_x = 10;
int bar_3_y = 50;
uint16_t last_coolant_temp = 0;
uint16_t last_intake_air_temp = 0;
uint16_t last_ambient_air_temp = 0;
uint16_t last_engine_oil_temp = 0;
void on_init_enter();
void on_init_run();
@@ -171,7 +172,7 @@ void on_init_run()
}
/* update initialization progress bar */
display.setColor(COLOR_ORANGE);
display.setColor(COLOR_LIGHT_GRAY);
display.fillRect(0, initialization_y + display.getFontYsize() + 3, ((float)init_percent / 100.0) * display.getDisplayXSize(), initialization_y + display.getFontYsize() + 13);
obd2_elm327_check_connection(&elm327);
@@ -292,9 +293,17 @@ void on_main_enter()
display.setColor(TEMP_BOX_COLOR);
display.drawRect(TEMP_BOX_X_START, TEMP_BOX_Y_START, TEMP_BOX_X_START + TEMP_BOX_WIDTH, TEMP_BOX_Y_START + TEMP_BOX_HEIGHT);
// draw T for title
display.setBackColor(VGA_TEAL);
display.setColor(VGA_BLACK);
display.print("T", TEMP_BOX_X_START + TEMP_BOX_WIDTH - display.getFontXsize(), TEMP_BOX_Y_START);
// reset colors
display.setColor(VGA_AQUA);
display.setBackColor(VGA_BLACK);
// update slow values so we don't have to wait for the first time the timer fires
// TODO do this while initializing
query_slow_obd2_values();
}
@@ -323,15 +332,22 @@ void on_main_run()
display.print("coo ", TEMP_BOX_CONTENT_X_START, TEMP_BOX_COOLANT_TEXT_Y_START);
display.setColor(VGA_AQUA);
display.printNumI(elm327.engine_coolant_temp, TEMP_BOX_CONTENT_X_START + (4 * display.getFontXsize()), TEMP_BOX_COOLANT_TEXT_Y_START, 4, '0');
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_COOLANT_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.engine_coolant_temp, COOLANT_TEMP_MAX, COLOR_ORANGE, 1, &display);
// if the current temp is lower than the last temp (bar dropped) remove part of the drawn bar instead of drawing a new one
if (last_coolant_temp > elm327.engine_coolant_temp)
{
bar_clear_part_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_COOLANT_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.engine_coolant_temp, COOLANT_TEMP_MAX, VGA_BLACK, 1, &display);
}
else
{
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_COOLANT_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.engine_coolant_temp, COOLANT_TEMP_MAX, COLOR_LIGHT_GRAY, 1, &display);
}
last_coolant_temp = elm327.engine_coolant_temp;
#if (DEBUG == 1)
Serial.print("bar height ");
Serial.println(TEMP_BOX_BAR_HEIGHT);
Serial.print("coolant temp: ");
Serial.println(elm327.engine_coolant_temp);
#endif
#endif // DEBUG
}
if (elm327.value_updates & (1 << UPDATE_FUEL_PRESSURE_POS))
@@ -355,7 +371,17 @@ void on_main_run()
display.print("int ", TEMP_BOX_CONTENT_X_START, TEMP_BOX_INTAKE_AIR_TEXT_Y_START);
display.setColor(VGA_AQUA);
display.printNumI(elm327.intake_air_temp, TEMP_BOX_CONTENT_X_START + (4 * display.getFontXsize()), TEMP_BOX_INTAKE_AIR_TEXT_Y_START, 4, '0');
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_INTAKE_AIR_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.intake_air_temp, INTAKE_AIR_TEMP_MAX, COLOR_ORANGE, 1, &display);
// if the current temp is lower than the last temp (bar dropped) remove part of the drawn bar instead of drawing a new one
if (last_intake_air_temp > elm327.intake_air_temp)
{
bar_clear_part_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_INTAKE_AIR_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.intake_air_temp, INTAKE_AIR_TEMP_MAX, VGA_BLACK, 1, &display);
}
else
{
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_INTAKE_AIR_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.intake_air_temp, INTAKE_AIR_TEMP_MAX, COLOR_LIGHT_GRAY, 1, &display);
}
last_intake_air_temp = elm327.intake_air_temp;
#if (DEBUG == 1)
Serial.print("intake air temp: ");
@@ -370,7 +396,17 @@ void on_main_run()
display.print("amb ", TEMP_BOX_CONTENT_X_START, TEMP_BOX_AMBIENT_AIR_TEXT_Y_START);
display.setColor(VGA_AQUA);
display.printNumI(elm327.ambient_air_temp, TEMP_BOX_CONTENT_X_START + (4 * display.getFontXsize()), TEMP_BOX_AMBIENT_AIR_TEXT_Y_START, 4, '0');
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_AMBIENT_AIR_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.ambient_air_temp, AMBIENT_AIR_TEMP_MAX, COLOR_ORANGE, 1, &display);
// if the current temp is lower than the last temp (bar dropped) remove part of the drawn bar instead of drawing a new one
if (last_ambient_air_temp > elm327.ambient_air_temp)
{
bar_clear_part_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_AMBIENT_AIR_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.ambient_air_temp, AMBIENT_AIR_TEMP_MAX, VGA_BLACK, 1, &display);
}
else
{
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_AMBIENT_AIR_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.ambient_air_temp, AMBIENT_AIR_TEMP_MAX, COLOR_LIGHT_GRAY, 1, &display);
}
last_ambient_air_temp = elm327.ambient_air_temp;
#if (DEBUG == 1)
Serial.print("ambient air temp: ");
@@ -385,7 +421,18 @@ void on_main_run()
display.print("oil ", TEMP_BOX_CONTENT_X_START, TEMP_BOX_OIL_TEXT_Y_START);
display.setColor(VGA_AQUA);
display.printNumI(elm327.engine_oil_temp, TEMP_BOX_CONTENT_X_START + (4 * display.getFontXsize()), TEMP_BOX_OIL_TEXT_Y_START, 4, '0');
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_OIL_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.engine_oil_temp, OIL_TEMP_MAX, COLOR_ORANGE, 1, &display);
// if the current temp is lower than the last temp (bar dropped) remove part of the drawn bar instead of drawing a new one
if (last_engine_oil_temp > elm327.engine_oil_temp)
{
bar_clear_part_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_OIL_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.engine_oil_temp, OIL_TEMP_MAX, VGA_BLACK, 1, &display);
}
else
{
bar_draw_horizontal(TEMP_BOX_CONTENT_X_START, TEMP_BOX_OIL_BAR_Y_START, TEMP_BOX_BAR_WIDTH, TEMP_BOX_BAR_HEIGHT, elm327.engine_oil_temp, OIL_TEMP_MAX, COLOR_LIGHT_GRAY, 1, &display);
}
last_engine_oil_temp = elm327.engine_oil_temp;
#if (DEBUG == 1)
Serial.print("oil temp: ");
@@ -555,7 +602,7 @@ void setup()
display.print("Welcome Sem", (display.getDisplayXSize() / 2) - ((11 * display.getFontXsize()) / 2), 120);
display.setColor(VGA_FUCHSIA);
display.print("Just a moment...", (display.getDisplayXSize() / 2) - ((16 * display.getFontXsize()) / 2), 140);
display.setColor(COLOR_ORANGE);
display.setColor(COLOR_LIGHT_GRAY);
display.print("Waiting for ELM327", (display.getDisplayXSize() / 2) - ((18 * display.getFontXsize()) / 2), 160);
#if (DEBUG == 1)