From 416ea430a42743b391ac65df2c7291022cdb16af Mon Sep 17 00:00:00 2001 From: Sylaina Date: Sat, 15 Sep 2018 13:31:14 +0200 Subject: [PATCH] Add files via upload contains a 6x8 font for display --- font.h | 155 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 font.h diff --git a/font.h b/font.h new file mode 100644 index 0000000..bba5d80 --- /dev/null +++ b/font.h @@ -0,0 +1,155 @@ +/* + * font.h + * i2c + * + * Created by Michael Köhler on 13.09.18. + * Copyright 2018 Skie-Systems. All rights reserved. + * + */ +#ifndef _font_h_ +#define _font_h_ + +const char ssd1306oled_font6x8 [] PROGMEM = { +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // sp +0x00, 0x00, 0x00, 0x2f, 0x00, 0x00, // ! +0x00, 0x00, 0x07, 0x00, 0x07, 0x00, // " +0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14, // # +0x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12, // $ +0x00, 0x62, 0x64, 0x08, 0x13, 0x23, // % +0x00, 0x36, 0x49, 0x55, 0x22, 0x50, // & +0x00, 0x00, 0x05, 0x03, 0x00, 0x00, // ' +0x00, 0x00, 0x1c, 0x22, 0x41, 0x00, // ( +0x00, 0x00, 0x41, 0x22, 0x1c, 0x00, // ) +0x00, 0x14, 0x08, 0x3E, 0x08, 0x14, // * +0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, // + +0x00, 0x00, 0x00, 0xA0, 0x60, 0x00, // , +0x00, 0x08, 0x08, 0x08, 0x08, 0x08, // - +0x00, 0x00, 0x60, 0x60, 0x00, 0x00, // . +0x00, 0x20, 0x10, 0x08, 0x04, 0x02, // / +0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E, // 0 +0x00, 0x00, 0x42, 0x7F, 0x40, 0x00, // 1 +0x00, 0x42, 0x61, 0x51, 0x49, 0x46, // 2 +0x00, 0x21, 0x41, 0x45, 0x4B, 0x31, // 3 +0x00, 0x18, 0x14, 0x12, 0x7F, 0x10, // 4 +0x00, 0x27, 0x45, 0x45, 0x45, 0x39, // 5 +0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30, // 6 +0x00, 0x01, 0x71, 0x09, 0x05, 0x03, // 7 +0x00, 0x36, 0x49, 0x49, 0x49, 0x36, // 8 +0x00, 0x06, 0x49, 0x49, 0x29, 0x1E, // 9 +0x00, 0x00, 0x36, 0x36, 0x00, 0x00, // : +0x00, 0x00, 0x56, 0x36, 0x00, 0x00, // ; +0x00, 0x08, 0x14, 0x22, 0x41, 0x00, // < +0x00, 0x14, 0x14, 0x14, 0x14, 0x14, // = +0x00, 0x00, 0x41, 0x22, 0x14, 0x08, // > +0x00, 0x02, 0x01, 0x51, 0x09, 0x06, // ? +0x00, 0x32, 0x49, 0x59, 0x51, 0x3E, // @ +0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C, // A +0x00, 0x7F, 0x49, 0x49, 0x49, 0x36, // B +0x00, 0x3E, 0x41, 0x41, 0x41, 0x22, // C +0x00, 0x7F, 0x41, 0x41, 0x22, 0x1C, // D +0x00, 0x7F, 0x49, 0x49, 0x49, 0x41, // E +0x00, 0x7F, 0x09, 0x09, 0x09, 0x01, // F +0x00, 0x3E, 0x41, 0x49, 0x49, 0x7A, // G +0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F, // H +0x00, 0x00, 0x41, 0x7F, 0x41, 0x00, // I +0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, // J +0x00, 0x7F, 0x08, 0x14, 0x22, 0x41, // K +0x00, 0x7F, 0x40, 0x40, 0x40, 0x40, // L +0x00, 0x7F, 0x02, 0x0C, 0x02, 0x7F, // M +0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F, // N +0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E, // O +0x00, 0x7F, 0x09, 0x09, 0x09, 0x06, // P +0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E, // Q +0x00, 0x7F, 0x09, 0x19, 0x29, 0x46, // R +0x00, 0x46, 0x49, 0x49, 0x49, 0x31, // S +0x00, 0x01, 0x01, 0x7F, 0x01, 0x01, // T +0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F, // U +0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F, // V +0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F, // W +0x00, 0x63, 0x14, 0x08, 0x14, 0x63, // X +0x00, 0x07, 0x08, 0x70, 0x08, 0x07, // Y +0x00, 0x61, 0x51, 0x49, 0x45, 0x43, // Z +0x00, 0x00, 0x7F, 0x41, 0x41, 0x00, // [ +0x00, 0x55, 0x2A, 0x55, 0x2A, 0x55, // backslash +0x00, 0x00, 0x41, 0x41, 0x7F, 0x00, // ] +0x00, 0x04, 0x02, 0x01, 0x02, 0x04, // ^ +0x00, 0x40, 0x40, 0x40, 0x40, 0x40, // _ +0x00, 0x00, 0x01, 0x02, 0x04, 0x00, // ' +0x00, 0x20, 0x54, 0x54, 0x54, 0x78, // a +0x00, 0x7F, 0x48, 0x44, 0x44, 0x38, // b +0x00, 0x38, 0x44, 0x44, 0x44, 0x20, // c +0x00, 0x38, 0x44, 0x44, 0x48, 0x7F, // d +0x00, 0x38, 0x54, 0x54, 0x54, 0x18, // e +0x00, 0x08, 0x7E, 0x09, 0x01, 0x02, // f +0x00, 0x18, 0xA4, 0xA4, 0xA4, 0x7C, // g +0x00, 0x7F, 0x08, 0x04, 0x04, 0x78, // h +0x00, 0x00, 0x44, 0x7D, 0x40, 0x00, // i +0x00, 0x40, 0x80, 0x84, 0x7D, 0x00, // j +0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, // k +0x00, 0x00, 0x41, 0x7F, 0x40, 0x00, // l +0x00, 0x7C, 0x04, 0x18, 0x04, 0x78, // m +0x00, 0x7C, 0x08, 0x04, 0x04, 0x78, // n +0x00, 0x38, 0x44, 0x44, 0x44, 0x38, // o +0x00, 0xFC, 0x24, 0x24, 0x24, 0x18, // p +0x00, 0x18, 0x24, 0x24, 0x18, 0xFC, // q +0x00, 0x7C, 0x08, 0x04, 0x04, 0x08, // r +0x00, 0x48, 0x54, 0x54, 0x54, 0x20, // s +0x00, 0x04, 0x3F, 0x44, 0x40, 0x20, // t +0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C, // u +0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C, // v +0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C, // w +0x00, 0x44, 0x28, 0x10, 0x28, 0x44, // x +0x00, 0x1C, 0xA0, 0xA0, 0xA0, 0x7C, // y +0x00, 0x44, 0x64, 0x54, 0x4C, 0x44, // z +0x00, 0x00, 0x08, 0x77, 0x41, 0x00, // { +0x00, 0x00, 0x00, 0x63, 0x00, 0x00, // ¦ +0x00, 0x00, 0x41, 0x77, 0x08, 0x00, // } +0x00, 0x08, 0x04, 0x08, 0x08, 0x04, // ~ +0x00, 0x3D, 0x40, 0x40, 0x20, 0x7D, // ü +0x00, 0x3D, 0x40, 0x40, 0x40, 0x3D, // Ü +0x00, 0x21, 0x54, 0x54, 0x54, 0x79, // ä +0x00, 0x7D, 0x12, 0x11, 0x12, 0x7D, // Ä +0x00, 0x39, 0x44, 0x44, 0x44, 0x39, // ö +0x00, 0x3D, 0x42, 0x42, 0x42, 0x3D, // Ö +0x00, 0x02, 0x05, 0x02, 0x00, 0x00, // ° +0x00, 0x7E, 0x01, 0x49, 0x55, 0x73, // ß +/* TODO: add new chars here, edit getCharCode() too */ +}; + +uint8_t getCharCode(char value){ + switch (value) { + case 'ü': + value = 95; // ü + break; + case 'ö': + value = 99; // ö + break; + case '°': + value = 101; // ° + break; + case 'ä': + value = 97; // ä + break; + case 'ß': + value = 102; // ß + break; + case 'Ü': + value = 96; // Ü + break; + case 'Ö': + value = 100; // Ö + break; + case 'Ä': + value = 98; // Ä + break; + default: + value -= 32; + if( value > 127-32 ) { + return 0; + } + break; + } + return value; +} + +#endif \ No newline at end of file