From f99f21926e515cf93e2af35eb82808f337998738 Mon Sep 17 00:00:00 2001 From: Stanley Huang Date: Mon, 10 Jun 2013 13:21:54 +0800 Subject: update OBD logger --- obdlogger/MultiLCD.cpp | 182 ------------------------------------------------- 1 file changed, 182 deletions(-) delete mode 100644 obdlogger/MultiLCD.cpp (limited to 'obdlogger/MultiLCD.cpp') diff --git a/obdlogger/MultiLCD.cpp b/obdlogger/MultiLCD.cpp deleted file mode 100644 index cff82c2..0000000 --- a/obdlogger/MultiLCD.cpp +++ /dev/null @@ -1,182 +0,0 @@ -#include -#include "MultiLCD.h" - -const PROGMEM unsigned char font16x16[][32] = { -{0x00,0xE0,0xF8,0xFC,0xFE,0x1E,0x07,0x07,0x07,0x07,0x1E,0xFE,0xFC,0xF8,0xF0,0x00,0x00,0x07,0x0F,0x3F,0x3F,0x7C,0x70,0x70,0x70,0x70,0x7C,0x3F,0x1F,0x1F,0x07,0x00},/*0*/ -{0x00,0x00,0x00,0x06,0x07,0x07,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00,0x00},/*1*/ -{0x00,0x38,0x3C,0x3E,0x3E,0x0F,0x07,0x07,0x07,0xCF,0xFF,0xFE,0xFE,0x38,0x00,0x00,0x00,0x40,0x40,0x60,0x70,0x78,0x7C,0x7E,0x7F,0x77,0x73,0x71,0x70,0x70,0x00,0x00},/*2*/ -{0x00,0x18,0x1C,0x1E,0x1E,0x0F,0xC7,0xC7,0xE7,0xFF,0xFE,0xBE,0x9C,0x00,0x00,0x00,0x00,0x0C,0x1C,0x3C,0x3C,0x78,0x70,0x70,0x70,0x79,0x7F,0x3F,0x1F,0x0F,0x00,0x00},/*3*/ -{0x00,0x00,0x80,0xC0,0xE0,0x70,0x38,0x1C,0x1E,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x06,0x07,0x07,0x07,0x06,0x06,0x06,0x06,0x06,0x7F,0x7F,0x7F,0x7F,0x06,0x06,0x00},/*4*/ -{0x00,0x00,0x00,0x00,0xF0,0xFF,0xFF,0xFF,0xE7,0xE7,0xE7,0xE7,0xC7,0x87,0x00,0x00,0x00,0x00,0x38,0x78,0x71,0x70,0x70,0x70,0x70,0x70,0x39,0x3F,0x3F,0x1F,0x0F,0x00},/*5*/ -{0x00,0x80,0xE0,0xF0,0xF8,0xFC,0x7F,0x7F,0x6F,0x67,0xE1,0xE1,0xC0,0x80,0x00,0x00,0x00,0x0F,0x1F,0x3F,0x3F,0x78,0x70,0x70,0x70,0x70,0x78,0x3F,0x3F,0x1F,0x0F,0x00},/*6*/ -{0x00,0x07,0x07,0x07,0x07,0x07,0xC7,0xE7,0xF7,0xFF,0x7F,0x3F,0x1F,0x07,0x03,0x01,0x00,0x20,0x38,0x7C,0x7E,0x3F,0x0F,0x07,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*7*/ -{0x00,0x00,0x00,0x1C,0xBE,0xFE,0xFF,0xE7,0xC3,0xC3,0xE7,0xFF,0xFE,0xBE,0x1C,0x00,0x00,0x00,0x0E,0x3F,0x3F,0x7F,0x71,0x60,0x60,0x60,0x71,0x7F,0x3F,0x3F,0x0F,0x00},/*8*/ -{0x00,0x78,0xFC,0xFE,0xFE,0x8F,0x07,0x07,0x07,0x07,0x8F,0xFE,0xFE,0xFC,0xF8,0x00,0x00,0x00,0x00,0x01,0x43,0x43,0x73,0x7B,0x7F,0x7F,0x1F,0x0F,0x07,0x03,0x00,0x00},/*9*/ -}; - -// The 7-bit ASCII character set... -const PROGMEM unsigned char font5x8[][5] = { - { 0x00, 0x00, 0x00, 0x00, 0x00 }, // 20 space - { 0x00, 0x00, 0x5f, 0x00, 0x00 }, // 21 ! - { 0x00, 0x07, 0x00, 0x07, 0x00 }, // 22 " - { 0x14, 0x7f, 0x14, 0x7f, 0x14 }, // 23 # - { 0x24, 0x2a, 0x7f, 0x2a, 0x12 }, // 24 $ - { 0x23, 0x13, 0x08, 0x64, 0x62 }, // 25 % - { 0x36, 0x49, 0x55, 0x22, 0x50 }, // 26 & - { 0x00, 0x05, 0x03, 0x00, 0x00 }, // 27 ' - { 0x00, 0x1c, 0x22, 0x41, 0x00 }, // 28 ( - { 0x00, 0x41, 0x22, 0x1c, 0x00 }, // 29 ) - { 0x14, 0x08, 0x3e, 0x08, 0x14 }, // 2a * - { 0x08, 0x08, 0x3e, 0x08, 0x08 }, // 2b + - { 0x00, 0x50, 0x30, 0x00, 0x00 }, // 2c , - { 0x08, 0x08, 0x08, 0x08, 0x08 }, // 2d - - { 0x00, 0x60, 0x60, 0x00, 0x00 }, // 2e . - { 0x20, 0x10, 0x08, 0x04, 0x02 }, // 2f / - { 0x3e, 0x51, 0x49, 0x45, 0x3e }, // 30 0 - { 0x00, 0x42, 0x7f, 0x40, 0x00 }, // 31 1 - { 0x42, 0x61, 0x51, 0x49, 0x46 }, // 32 2 - { 0x21, 0x41, 0x45, 0x4b, 0x31 }, // 33 3 - { 0x18, 0x14, 0x12, 0x7f, 0x10 }, // 34 4 - { 0x27, 0x45, 0x45, 0x45, 0x39 }, // 35 5 - { 0x3c, 0x4a, 0x49, 0x49, 0x30 }, // 36 6 - { 0x01, 0x71, 0x09, 0x05, 0x03 }, // 37 7 - { 0x36, 0x49, 0x49, 0x49, 0x36 }, // 38 8 - { 0x06, 0x49, 0x49, 0x29, 0x1e }, // 39 9 - { 0x00, 0x36, 0x36, 0x00, 0x00 }, // 3a : - { 0x00, 0x56, 0x36, 0x00, 0x00 }, // 3b ; - { 0x08, 0x14, 0x22, 0x41, 0x00 }, // 3c < - { 0x14, 0x14, 0x14, 0x14, 0x14 }, // 3d = - { 0x00, 0x41, 0x22, 0x14, 0x08 }, // 3e > - { 0x02, 0x01, 0x51, 0x09, 0x06 }, // 3f ? - { 0x32, 0x49, 0x79, 0x41, 0x3e }, // 40 @ - { 0x7e, 0x11, 0x11, 0x11, 0x7e }, // 41 A - { 0x7f, 0x49, 0x49, 0x49, 0x36 }, // 42 B - { 0x3e, 0x41, 0x41, 0x41, 0x22 }, // 43 C - { 0x7f, 0x41, 0x41, 0x22, 0x1c }, // 44 D - { 0x7f, 0x49, 0x49, 0x49, 0x41 }, // 45 E - { 0x7f, 0x09, 0x09, 0x09, 0x01 }, // 46 F - { 0x3e, 0x41, 0x49, 0x49, 0x7a }, // 47 G - { 0x7f, 0x08, 0x08, 0x08, 0x7f }, // 48 H - { 0x00, 0x41, 0x7f, 0x41, 0x00 }, // 49 I - { 0x20, 0x40, 0x41, 0x3f, 0x01 }, // 4a J - { 0x7f, 0x08, 0x14, 0x22, 0x41 }, // 4b K - { 0x7f, 0x40, 0x40, 0x40, 0x40 }, // 4c L - { 0x7f, 0x02, 0x0c, 0x02, 0x7f }, // 4d M - { 0x7f, 0x04, 0x08, 0x10, 0x7f }, // 4e N - { 0x3e, 0x41, 0x41, 0x41, 0x3e }, // 4f O - { 0x7f, 0x09, 0x09, 0x09, 0x06 }, // 50 P - { 0x3e, 0x41, 0x51, 0x21, 0x5e }, // 51 Q - { 0x7f, 0x09, 0x19, 0x29, 0x46 }, // 52 R - { 0x46, 0x49, 0x49, 0x49, 0x31 }, // 53 S - { 0x01, 0x01, 0x7f, 0x01, 0x01 }, // 54 T - { 0x3f, 0x40, 0x40, 0x40, 0x3f }, // 55 U - { 0x1f, 0x20, 0x40, 0x20, 0x1f }, // 56 V - { 0x3f, 0x40, 0x38, 0x40, 0x3f }, // 57 W - { 0x63, 0x14, 0x08, 0x14, 0x63 }, // 58 X - { 0x07, 0x08, 0x70, 0x08, 0x07 }, // 59 Y - { 0x61, 0x51, 0x49, 0x45, 0x43 }, // 5a Z - { 0x00, 0x7f, 0x41, 0x41, 0x00 }, // 5b [ - { 0x02, 0x04, 0x08, 0x10, 0x20 }, // 5c backslash - { 0x00, 0x41, 0x41, 0x7f, 0x00 }, // 5d ] - { 0x04, 0x02, 0x01, 0x02, 0x04 }, // 5e ^ - { 0x40, 0x40, 0x40, 0x40, 0x40 }, // 5f _ - { 0x00, 0x01, 0x02, 0x04, 0x00 }, // 60 ` - { 0x20, 0x54, 0x54, 0x54, 0x78 }, // 61 a - { 0x7f, 0x48, 0x44, 0x44, 0x38 }, // 62 b - { 0x38, 0x44, 0x44, 0x44, 0x20 }, // 63 c - { 0x38, 0x44, 0x44, 0x48, 0x7f }, // 64 d - { 0x38, 0x54, 0x54, 0x54, 0x18 }, // 65 e - { 0x08, 0x7e, 0x09, 0x01, 0x02 }, // 66 f - { 0x0c, 0x52, 0x52, 0x52, 0x3e }, // 67 g - { 0x7f, 0x08, 0x04, 0x04, 0x78 }, // 68 h - { 0x00, 0x44, 0x7d, 0x40, 0x00 }, // 69 i - { 0x20, 0x40, 0x44, 0x3d, 0x00 }, // 6a j - { 0x7f, 0x10, 0x28, 0x44, 0x00 }, // 6b k - { 0x00, 0x41, 0x7f, 0x40, 0x00 }, // 6c l - { 0x7c, 0x04, 0x18, 0x04, 0x78 }, // 6d m - { 0x7c, 0x08, 0x04, 0x04, 0x78 }, // 6e n - { 0x38, 0x44, 0x44, 0x44, 0x38 }, // 6f o - { 0x7c, 0x14, 0x14, 0x14, 0x08 }, // 70 p - { 0x08, 0x14, 0x14, 0x18, 0x7c }, // 71 q - { 0x7c, 0x08, 0x04, 0x04, 0x08 }, // 72 r - { 0x48, 0x54, 0x54, 0x54, 0x20 }, // 73 s - { 0x04, 0x3f, 0x44, 0x40, 0x20 }, // 74 t - { 0x3c, 0x40, 0x40, 0x20, 0x7c }, // 75 u - { 0x1c, 0x20, 0x40, 0x20, 0x1c }, // 76 v - { 0x3c, 0x40, 0x30, 0x40, 0x3c }, // 77 w - { 0x44, 0x28, 0x10, 0x28, 0x44 }, // 78 x - { 0x0c, 0x50, 0x50, 0x50, 0x3c }, // 79 y - { 0x44, 0x64, 0x54, 0x4c, 0x44 }, // 7a z - { 0x00, 0x08, 0x36, 0x41, 0x00 }, // 7b { - { 0x00, 0x00, 0x7f, 0x00, 0x00 }, // 7c | - { 0x00, 0x41, 0x36, 0x08, 0x00 }, // 7d } - { 0x10, 0x08, 0x08, 0x10, 0x08 }, // 7e ~ - { 0x00, 0x00, 0x00, 0x00, 0x00 } // 7f -}; - -void LCD_OLED::write(char c) -{ - char s[2] = {c}; - ScI2cMxDisplay8x16Str(OLED_ADDRESS, m_line, m_column, s); - m_column += 8; - if (m_column >= 128) { - m_column = 0; - m_line += 2; - } -} - -void LCD_OLED::print(const char* s) -{ - ScI2cMxDisplay8x16Str(OLED_ADDRESS, m_line, m_column, s); - m_column += (strlen(s) << 3); - m_line += (m_column >> 7) << 1; - m_column %= 0x7f; -} - -void LCD_OLED::printLarge(const char* s) -{ - delay(5); - while (*s) { - if (*s >= '0' && *s <= '9') { - char data[32]; - memcpy_P(data, font16x16[*s - '0'], 32); - ScI2cMxDisplayDot16x16(OLED_ADDRESS, m_line, m_column, data); - } else { - ScI2cMxFillArea(OLED_ADDRESS, m_line, m_line + 1, m_column, m_column + 16, 0); - } - m_column += 16; - if (m_column >= 128) { - m_column = 0; - m_line += 2; - } - s++; - } -} - -void LCD_OLED::clear() -{ - ScI2cMxFillArea(OLED_ADDRESS, 0, 7, 0, 127, 0); - delay(10); - setCursor(0, 0); -} - -void LCD_OLED::begin() -{ - I2cInit(); - ScI2cMxReset(OLED_ADDRESS); - delay(10); -} - -void LCD_PCD8544::printLarge(const char* s) -{ - while (*s) { - if (*s >= '0' && *s <= '9') { - unsigned char data[32]; - memcpy_P(data, font16x16[*s - '0'], 32); - drawBitmap(data, 16, 16); - } else { - column = (column + 16) % 84; - } - s++; - } -} -- cgit v1.2.3