Кириллические символы в библиотеке UTFT
- Войдите на сайт для отправки комментариев
Чт, 23/05/2013 - 10:47
Добрый день, подскажите, ктонибуть пробывал добавить кириличиские шрифты в UTFT?
В этом примере http://devicter.blogspot.ru/2013/03/rusUTFT-SmallFont.html все доходчиво описано, но при редактировании BigFont столкнулся с тем, что не выводится на экран текст вообще. Если кто может глянте пожалуста, что не так в файле шрифта?
#if defined(__AVR__)
#include <avr/pgmspace.h>
#define fontdatatype uint8_t
#elif defined(__PIC32MX__)
#define PROGMEM
#define fontdatatype const unsigned char
#elif defined(__arm__)
#define PROGMEM
#define fontdatatype const unsigned char
#endif
// SmallFont.c
// Modified by Alexey Stepanov (cyrillic symbols added)
// Font Size : 8x12
// Memory usage : 1720 bytes
// # characters : 144
// offset : 32
fontdatatype SmallFont[1732] PROGMEM={
0x08,0x0C,0x20,0x8F,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // <Space>
0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00, // !
0x00,0x28,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // "
0x00,0x00,0x28,0x28,0xFC,0x28,0x50,0xFC,0x50,0x50,0x00,0x00, // #
0x00,0x20,0x78,0xA8,0xA0,0x60,0x30,0x28,0xA8,0xF0,0x20,0x00, // $
0x00,0x00,0x48,0xA8,0xB0,0x50,0x28,0x34,0x54,0x48,0x00,0x00, // %
0x00,0x00,0x20,0x50,0x50,0x78,0xA8,0xA8,0x90,0x6C,0x00,0x00, // &
0x00,0x40,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '
0x00,0x04,0x08,0x10,0x10,0x10,0x10,0x10,0x10,0x08,0x04,0x00, // (
0x00,0x40,0x20,0x10,0x10,0x10,0x10,0x10,0x10,0x20,0x40,0x00, // )
0x00,0x00,0x00,0x20,0xA8,0x70,0x70,0xA8,0x20,0x00,0x00,0x00, // *
0x00,0x00,0x20,0x20,0x20,0xF8,0x20,0x20,0x20,0x00,0x00,0x00, // +
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x80, // ,
0x00,0x00,0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00, // -
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00, // .
0x00,0x08,0x10,0x10,0x10,0x20,0x20,0x40,0x40,0x40,0x80,0x00, // /
0x00,0x00,0x70,0x88,0x88,0x88,0x88,0x88,0x88,0x70,0x00,0x00, // 0
0x00,0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00, // 1
0x00,0x00,0x70,0x88,0x88,0x10,0x20,0x40,0x80,0xF8,0x00,0x00, // 2
0x00,0x00,0x70,0x88,0x08,0x30,0x08,0x08,0x88,0x70,0x00,0x00, // 3
0x00,0x00,0x10,0x30,0x50,0x50,0x90,0x78,0x10,0x18,0x00,0x00, // 4
0x00,0x00,0xF8,0x80,0x80,0xF0,0x08,0x08,0x88,0x70,0x00,0x00, // 5
0x00,0x00,0x70,0x90,0x80,0xF0,0x88,0x88,0x88,0x70,0x00,0x00, // 6
0x00,0x00,0xF8,0x90,0x10,0x20,0x20,0x20,0x20,0x20,0x00,0x00, // 7
0x00,0x00,0x70,0x88,0x88,0x70,0x88,0x88,0x88,0x70,0x00,0x00, // 8
0x00,0x00,0x70,0x88,0x88,0x88,0x78,0x08,0x48,0x70,0x00,0x00, // 9
0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x20,0x00,0x00, // :
0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x20,0x00, // ;
0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,0x00, // <
0x00,0x00,0x00,0x00,0xF8,0x00,0x00,0xF8,0x00,0x00,0x00,0x00, // =
0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,0x00, // >
0x00,0x00,0x70,0x88,0x88,0x10,0x20,0x20,0x00,0x20,0x00,0x00, // ?
0x00,0x00,0x70,0x88,0x98,0xA8,0xA8,0xB8,0x80,0x78,0x00,0x00, // @
0x00,0x00,0x20,0x20,0x30,0x50,0x50,0x78,0x48,0xCC,0x00,0x00, // A
0x00,0x00,0xF0,0x48,0x48,0x70,0x48,0x48,0x48,0xF0,0x00,0x00, // B
0x00,0x00,0x78,0x88,0x80,0x80,0x80,0x80,0x88,0x70,0x00,0x00, // C
0x00,0x00,0xF0,0x48,0x48,0x48,0x48,0x48,0x48,0xF0,0x00,0x00, // D
0x00,0x00,0xF8,0x48,0x50,0x70,0x50,0x40,0x48,0xF8,0x00,0x00, // E
0x00,0x00,0xF8,0x48,0x50,0x70,0x50,0x40,0x40,0xE0,0x00,0x00, // F
0x00,0x00,0x38,0x48,0x80,0x80,0x9C,0x88,0x48,0x30,0x00,0x00, // G
0x00,0x00,0xCC,0x48,0x48,0x78,0x48,0x48,0x48,0xCC,0x00,0x00, // H
0x00,0x00,0xF8,0x20,0x20,0x20,0x20,0x20,0x20,0xF8,0x00,0x00, // I
0x00,0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x90,0xE0,0x00, // J
0x00,0x00,0xEC,0x48,0x50,0x60,0x50,0x50,0x48,0xEC,0x00,0x00, // K
0x00,0x00,0xE0,0x40,0x40,0x40,0x40,0x40,0x44,0xFC,0x00,0x00, // L
0x00,0x00,0xD8,0xD8,0xD8,0xD8,0xA8,0xA8,0xA8,0xA8,0x00,0x00, // M
0x00,0x00,0xDC,0x48,0x68,0x68,0x58,0x58,0x48,0xE8,0x00,0x00, // N
0x00,0x00,0x70,0x88,0x88,0x88,0x88,0x88,0x88,0x70,0x00,0x00, // O
0x00,0x00,0xF0,0x48,0x48,0x70,0x40,0x40,0x40,0xE0,0x00,0x00, // P
0x00,0x00,0x70,0x88,0x88,0x88,0x88,0xE8,0x98,0x70,0x18,0x00, // Q
0x00,0x00,0xF0,0x48,0x48,0x70,0x50,0x48,0x48,0xEC,0x00,0x00, // R
0x00,0x00,0x78,0x88,0x80,0x60,0x10,0x08,0x88,0xF0,0x00,0x00, // S
0x00,0x00,0xF8,0xA8,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00, // T
0x00,0x00,0xCC,0x48,0x48,0x48,0x48,0x48,0x48,0x30,0x00,0x00, // U
0x00,0x00,0xCC,0x48,0x48,0x50,0x50,0x30,0x20,0x20,0x00,0x00, // V
0x00,0x00,0xA8,0xA8,0xA8,0x70,0x50,0x50,0x50,0x50,0x00,0x00, // W
0x00,0x00,0xD8,0x50,0x50,0x20,0x20,0x50,0x50,0xD8,0x00,0x00, // X
0x00,0x00,0xD8,0x50,0x50,0x20,0x20,0x20,0x20,0x70,0x00,0x00, // Y
0x00,0x00,0xF8,0x90,0x10,0x20,0x20,0x40,0x48,0xF8,0x00,0x00, // Z
0x00,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00, // [
0x00,0x40,0x40,0x40,0x20,0x20,0x10,0x10,0x10,0x08,0x00,0x00, // <Backslash>
0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x70,0x00, // ]
0x00,0x20,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // ^
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC, // _
0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '
0x00,0x00,0x00,0x00,0x00,0x30,0x48,0x38,0x48,0x3C,0x00,0x00, // a
0x00,0x00,0xC0,0x40,0x40,0x70,0x48,0x48,0x48,0x70,0x00,0x00, // b
0x00,0x00,0x00,0x00,0x00,0x38,0x48,0x40,0x40,0x38,0x00,0x00, // c
0x00,0x00,0x18,0x08,0x08,0x38,0x48,0x48,0x48,0x3C,0x00,0x00, // d
0x00,0x00,0x00,0x00,0x00,0x30,0x48,0x78,0x40,0x38,0x00,0x00, // e
0x00,0x00,0x1C,0x20,0x20,0x78,0x20,0x20,0x20,0x78,0x00,0x00, // f
0x00,0x00,0x00,0x00,0x00,0x3C,0x48,0x30,0x40,0x78,0x44,0x38, // g
0x00,0x00,0xC0,0x40,0x40,0x70,0x48,0x48,0x48,0xEC,0x00,0x00, // h
0x00,0x00,0x20,0x00,0x00,0x60,0x20,0x20,0x20,0x70,0x00,0x00, // i
0x00,0x00,0x10,0x00,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0xE0, // j
0x00,0x00,0xC0,0x40,0x40,0x5C,0x50,0x70,0x48,0xEC,0x00,0x00, // k
0x00,0x00,0xE0,0x20,0x20,0x20,0x20,0x20,0x20,0xF8,0x00,0x00, // l
0x00,0x00,0x00,0x00,0x00,0xF0,0xA8,0xA8,0xA8,0xA8,0x00,0x00, // m
0x00,0x00,0x00,0x00,0x00,0xF0,0x48,0x48,0x48,0xEC,0x00,0x00, // n
0x00,0x00,0x00,0x00,0x00,0x30,0x48,0x48,0x48,0x30,0x00,0x00, // o
0x00,0x00,0x00,0x00,0x00,0xF0,0x48,0x48,0x48,0x70,0x40,0xE0, // p
0x00,0x00,0x00,0x00,0x00,0x38,0x48,0x48,0x48,0x38,0x08,0x1C, // q
0x00,0x00,0x00,0x00,0x00,0xD8,0x60,0x40,0x40,0xE0,0x00,0x00, // r
0x00,0x00,0x00,0x00,0x00,0x78,0x40,0x30,0x08,0x78,0x00,0x00, // s
0x00,0x00,0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x18,0x00,0x00, // t
0x00,0x00,0x00,0x00,0x00,0xD8,0x48,0x48,0x48,0x3C,0x00,0x00, // u
0x00,0x00,0x00,0x00,0x00,0xEC,0x48,0x50,0x30,0x20,0x00,0x00, // v
0x00,0x00,0x00,0x00,0x00,0xA8,0xA8,0x70,0x50,0x50,0x00,0x00, // w
0x00,0x00,0x00,0x00,0x00,0xD8,0x50,0x20,0x50,0xD8,0x00,0x00, // x
0x00,0x00,0x00,0x00,0x00,0xEC,0x48,0x50,0x30,0x20,0x20,0xC0, // y
0x00,0x00,0x00,0x00,0x00,0x78,0x10,0x20,0x20,0x78,0x00,0x00, // z
0x00,0x18,0x10,0x10,0x10,0x20,0x10,0x10,0x10,0x10,0x18,0x00, // {
0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10, // |
0x00,0x60,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0x60,0x00, // }
0x40,0xA4,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // ~
0x00,0x00,0x30,0x48,0x48,0x30,0x00,0x00,0x00,0x00,0x00,0x00, // градус 127 0x7F
0x00,0x00,0xF8,0x48,0x40,0x70,0x48,0x48,0x48,0xF0,0x00,0x00, // Б 128 0x80
0x00,0x00,0xF8,0x48,0x40,0x40,0x40,0x40,0x40,0xE0,0x00,0x00, // Г 129 0x81
0x00,0x00,0x38,0x48,0x48,0x48,0x48,0x48,0x48,0xFC,0x84,0x00, // Д 130 0x82
0x50,0x00,0xF8,0x48,0x50,0x70,0x50,0x40,0x48,0xF8,0x00,0x00, // Ё 131 0x83
0x00,0x00,0xA8,0xA8,0xA8,0x70,0xF8,0xA8,0xA8,0xA8,0x00,0x00, // Ж 132 0x84
0x00,0x00,0xF0,0x88,0x08,0x30,0x08,0x08,0x08,0xF0,0x00,0x00, // З 133 0x85
0x00,0x00,0xEC,0x48,0x58,0x58,0x68,0x68,0x48,0xDC,0x00,0x00, // И 134 0x86
0x30,0x00,0xEC,0x48,0x58,0x58,0x68,0x68,0x48,0xDC,0x00,0x00, // Й 135 0x87
0x00,0x00,0x3C,0x48,0x48,0x48,0x48,0x48,0x48,0xCC,0x00,0x00, // Л 136 0x88
0x00,0x00,0xFC,0x48,0x48,0x48,0x48,0x48,0x48,0xCC,0x00,0x00, // П 137 0x89
0x00,0x00,0xD8,0x50,0x50,0x20,0x20,0x40,0x40,0x80,0x00,0x00, // У 138 0x8A
0x00,0x00,0x70,0xA8,0xA8,0xA8,0xA8,0x70,0x20,0x70,0x00,0x00, // Ф 139 0x8B
0x00,0x00,0xCC,0x48,0x48,0x48,0x48,0x48,0x48,0xFC,0x04,0x00, // Ц 140 0x8C
0x00,0x00,0xCC,0x48,0x48,0x48,0x38,0x08,0x08,0x1C,0x00,0x00, // Ч 141 0x8D
0x00,0x00,0xD6,0x54,0x54,0x54,0x54,0x54,0x54,0xFE,0x00,0x00, // Ш 142 0x8E
0x00,0x00,0xD6,0x54,0x54,0x54,0x54,0x54,0x54,0xFE,0x02,0x00, // Щ 143 0x8F
0x00,0x00,0xE0,0xC0,0x40,0x70,0x48,0x48,0x48,0xF0,0x00,0x00, // Ъ 144 0x90
0x00,0x00,0xEE,0x44,0x44,0x64,0x54,0x54,0x54,0xEE,0x00,0x00, // Ы 145 0x91
0x00,0x00,0xE0,0x40,0x40,0x70,0x48,0x48,0x48,0xF0,0x00,0x00, // Ь 146 0x92
0x00,0x00,0xE0,0x90,0x08,0x38,0x08,0x08,0x90,0x60,0x00,0x00, // Э 147 0x93
0x00,0x00,0xEC,0x52,0x52,0x52,0x72,0x52,0x52,0xEC,0x00,0x00, // Ю 148 0x94
0x00,0x00,0x3C,0x48,0x48,0x48,0x38,0x48,0x48,0x9C,0x00,0x00, // Я 149 0x95
0x00,0x00,0x08,0x30,0x40,0x70,0x48,0x48,0x48,0x30,0x00,0x00, // б 150 0x96
0x00,0x00,0x00,0x00,0x00,0x70,0x28,0x30,0x28,0x70,0x00,0x00, // в 151 0x97
0x00,0x00,0x00,0x00,0x00,0x78,0x28,0x20,0x20,0x70,0x00,0x00, // г 152 0x98
0x00,0x00,0x00,0x00,0x00,0x18,0x28,0x28,0x28,0x7C,0x44,0x00, // д 153 0x99
0x00,0x00,0x00,0x28,0x00,0x30,0x48,0x78,0x40,0x30,0x00,0x00, // ё 154 0x9A
0x00,0x00,0x00,0x00,0x00,0x54,0x54,0x38,0x54,0x54,0x00,0x00, // ж 155 0x9B
0x00,0x00,0x00,0x00,0x00,0x70,0x08,0x30,0x08,0x70,0x00,0x00, // з 156 0x9C
0x00,0x00,0x00,0x00,0x00,0xCC,0x48,0x58,0x68,0xCC,0x00,0x00, // и 157 0x9D
0x00,0x00,0x00,0x30,0x00,0xCC,0x48,0x58,0x68,0xCC,0x00,0x00, // й 158 0x9E
0x00,0x00,0x00,0x00,0x00,0x48,0x50,0x60,0x50,0x48,0x00,0x00, // к 159 0x9F
0x00,0x00,0x00,0x00,0x00,0x1C,0x28,0x28,0x28,0x4C,0x00,0x00, // л 160 0xA0
0x00,0x00,0x00,0x00,0x00,0x44,0x6C,0x54,0x44,0x44,0x00,0x00, // м 161 0xA1
0x00,0x00,0x00,0x00,0x00,0xCC,0x48,0x78,0x48,0xCC,0x00,0x00, // н 162 0xA2
0x00,0x00,0x00,0x00,0x00,0xFC,0x48,0x48,0x48,0xCC,0x00,0x00, // п 163 0xA3
0x00,0x00,0x00,0x00,0x00,0x7C,0x54,0x10,0x10,0x38,0x00,0x00, // т 164 0xA4
0x00,0x00,0x00,0x00,0x00,0x38,0x54,0x54,0x54,0x38,0x10,0x38, // ф 165 0xA5
0x00,0x00,0x00,0x00,0x00,0xCC,0x48,0x48,0x48,0xFC,0x04,0x00, // ц 166 0xA6
0x00,0x00,0x00,0x00,0x00,0xCC,0x48,0x38,0x08,0x0C,0x00,0x00, // ч 167 0xA7
0x00,0x00,0x00,0x00,0x00,0x54,0x54,0x54,0x54,0x7C,0x00,0x00, // ш 168 0xA8
0x00,0x00,0x00,0x00,0x00,0x54,0x54,0x54,0x54,0x7E,0x02,0x00, // щ 169 0xA9
0x00,0x00,0x00,0x00,0x00,0xE0,0xA0,0x30,0x28,0x70,0x00,0x00, // ъ 170 0xAA
0x00,0x00,0x00,0x00,0x00,0xC6,0x44,0x64,0x54,0xE6,0x00,0x00, // ы 171 0xAB
0x00,0x00,0x00,0x00,0x00,0x60,0x20,0x30,0x28,0x70,0x00,0x00, // ь 172 0xAC
0x00,0x00,0x00,0x00,0x00,0x30,0x48,0x18,0x48,0x30,0x00,0x00, // э 173 0xAD
0x00,0x00,0x00,0x00,0x00,0xC8,0x54,0x74,0x54,0xC8,0x00,0x00, // ю 174 0xAE
0x00,0x00,0x00,0x00,0x00,0x3C,0x48,0x48,0x38,0x4C,0x00,0x00, // я 175 0xAF
};
// SmallSymbolFont.c (C) 2013 by Alexey Stepanov
// Font Size : 8x12
// Memory usage : 280 bytes
// # characters : 23
// offset : 32
fontdatatype SmallSymbolFont[280] PROGMEM={
0x08,0x0C,0x20,0x17,
0x3C,0xE7,0x81,0xBD,0x81,0xBD,0x81,0xBD,0x81,0xBD,0x81,0xFF, // BATT FULL 32
0x3C,0xE7,0x81,0x81,0x81,0xBD,0x81,0xBD,0x81,0xBD,0x81,0xFF, // BATT 75% 33
0x3C,0xE7,0x81,0x81,0x81,0x81,0x81,0xBD,0x81,0xBD,0x81,0xFF, // BATT 50% 34
0x3C,0xE7,0x81,0x81,0x81,0x81,0x81,0x81,0x81,0xBD,0x81,0xFF, // BATT 25% 35
0x3C,0xE7,0x81,0x81,0x81,0x81,0x81,0x81,0x81,0x81,0x81,0xFF, // BATT EMPTY 36
0xFF,0xFF,0x00,0x3F,0x3F,0x00,0x0F,0x0F,0x00,0x03,0x03,0x00, // сингал 100% 37
0x00,0x00,0x00,0x3F,0x3F,0x00,0x0F,0x0F,0x00,0x03,0x03,0x00, // сигнал 75% 38
0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x00,0x03,0x03,0x00, // сигнал 50% 39
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x03,0x00, // сигнал 25% 40
0x00,0x00,0x10,0x10,0x10,0x10,0x10,0x54,0x38,0x10,0x00,0x00, // стрелка вверх 41
0x00,0x00,0x10,0x38,0x54,0x10,0x10,0x10,0x10,0x10,0x00,0x00, // стрелка вниз 42
0x00,0x00,0x00,0x00,0x10,0x08,0x7C,0x08,0x10,0x00,0x00,0x00, // стрелка вправо 43
0x00,0x00,0x00,0x00,0x10,0x20,0x7C,0x20,0x10,0x00,0x00,0x00, // стрелка влево 44
0x00,0x00,0x00,0x3C,0x0C,0x14,0x24,0x44,0x80,0x00,0x00,0x00, // стрелка вверх вправо 45
0x00,0x00,0x00,0x80,0x44,0x24,0x14,0x0C,0x3C,0x00,0x00,0x00, // стрелка вниз вправо 46
0x00,0x00,0x3C,0x42,0xA5,0x81,0xA5,0x99,0x42,0x3C,0x00,0x00, // веселый смайл 47
0x00,0x00,0x3C,0x7E,0xDB,0xFF,0xFF,0xDB,0x66,0x3C,0x00,0x00, // веселый негр 48
0x00,0x00,0x3C,0x42,0xA5,0x81,0x99,0xA5,0x42,0x3C,0x00,0x00, // грустный смайл 49
0x00,0x00,0x3C,0x7E,0xDB,0xFF,0xFF,0xE7,0x5A,0x3C,0x00,0x00, // грустный негр 50
0x00,0x00,0x3C,0x42,0x81,0x81,0x81,0x81,0x42,0x3C,0x00,0x00, // пустой круг 51
0x00,0x00,0x3C,0x7E,0xFF,0xFF,0xFF,0xFF,0x7E,0x3C,0x00,0x00, // полный круг 52
0x00,0x00,0xFF,0x81,0x81,0x81,0x81,0x81,0x81,0xFF,0x00,0x00, // квадрат пустой 53
0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00, // квадрат полный 54
};
// BigFont.c (C)2010 by Henning Karlsen
// Font Size : 16x16
// Memory usage : 3044 bytes
// # characters : 95
fontdatatype BigFont[4036] PROGMEM={
//0x10,0x10,0x20,0x89,
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, // <Space>
0x00,0x00,0x00,0x00,0x07,0x00,0x0F,0x80,0x0F,0x80,0x0F,0x80,0x0F,0x80,0x0F,0x80,0x07,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x00,0x00, // !
0x00,0x00,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x06,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // "
0x00,0x00,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x7F,0xFE,0x7F,0xFE,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x7F,0xFE,0x7F,0xFE,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x00,0x00, // #
0x00,0x00,0x02,0x40,0x02,0x40,0x0F,0xF8,0x1F,0xF8,0x1A,0x40,0x1A,0x40,0x1F,0xF0,0x0F,0xF8,0x02,0x58,0x02,0x58,0x1F,0xF8,0x1F,0xF0,0x02,0x40,0x02,0x40,0x00,0x00, // $
0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x10,0x0E,0x30,0x0E,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x70,0x0C,0x70,0x08,0x70,0x00,0x00,0x00,0x00,0x00,0x00, // %
0x00,0x00,0x00,0x00,0x0F,0x00,0x19,0x80,0x19,0x80,0x19,0x80,0x0F,0x00,0x0F,0x08,0x0F,0x98,0x19,0xF8,0x18,0xF0,0x18,0xE0,0x19,0xF0,0x0F,0x98,0x00,0x00,0x00,0x00, // &
0x00,0x00,0x00,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x0E,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,0xF0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xF0,0x00,0x00,0x00,0x00, // (
0x00,0x00,0x00,0x00,0x0F,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x0F,0x00,0x00,0x00,0x00,0x00, // )
0x00,0x00,0x00,0x00,0x01,0x80,0x11,0x88,0x09,0x90,0x07,0xE0,0x07,0xE0,0x3F,0xFC,0x3F,0xFC,0x07,0xE0,0x07,0xE0,0x09,0x90,0x11,0x88,0x01,0x80,0x00,0x00,0x00,0x00, // *
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x01,0x80,0x01,0x80,0x0F,0xF0,0x0F,0xF0,0x01,0x80,0x01,0x80,0x01,0x80,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,0x07,0x00,0x07,0x00,0x07,0x00,0x0E,0x00,0x00,0x00, // ,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x1F,0xF8,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,0x07,0x00,0x07,0x00,0x07,0x00,0x00,0x00,0x00,0x00, // ,
0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x06,0x00,0x0E,0x00,0x1C,0x00,0x38,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x00,0x1C,0x00,0x00,0x00,0x00,0x00, // /
0x00,0x00,0x00,0x00,0x0F,0xF0,0x1C,0x38,0x1C,0x78,0x1C,0xF8,0x1C,0xF8,0x1D,0xB8,0x1D,0xB8,0x1F,0x38,0x1F,0x38,0x1E,0x38,0x1C,0x38,0x0F,0xF0,0x00,0x00,0x00,0x00, // 0
0x00,0x00,0x00,0x00,0x01,0x80,0x01,0x80,0x03,0x80,0x1F,0x80,0x1F,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x1F,0xF0,0x00,0x00,0x00,0x00, // 1
0x00,0x00,0x00,0x00,0x0F,0xE0,0x1C,0x70,0x1C,0x38,0x00,0x38,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x38,0x1C,0x38,0x1F,0xF8,0x00,0x00,0x00,0x00, // 2
0x00,0x00,0x00,0x00,0x0F,0xE0,0x1C,0x70,0x1C,0x38,0x00,0x38,0x00,0x70,0x03,0xC0,0x03,0xC0,0x00,0x70,0x00,0x38,0x1C,0x38,0x1C,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // 3
0x00,0x00,0x00,0x00,0x00,0xE0,0x01,0xE0,0x03,0xE0,0x06,0xE0,0x0C,0xE0,0x18,0xE0,0x1F,0xF8,0x1F,0xF8,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x03,0xF8,0x00,0x00,0x00,0x00, // 4
0x00,0x00,0x00,0x00,0x1F,0xF8,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1F,0xE0,0x1F,0xF0,0x00,0x78,0x00,0x38,0x1C,0x38,0x1C,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // 5
0x00,0x00,0x00,0x00,0x03,0xE0,0x07,0x00,0x0E,0x00,0x1C,0x00,0x1C,0x00,0x1F,0xF0,0x1F,0xF8,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x0F,0xF0,0x00,0x00,0x00,0x00, // 6
0x00,0x00,0x00,0x00,0x1F,0xFC,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x00,0x1C,0x00,0x38,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x03,0x80,0x03,0x80,0x00,0x00,0x00,0x00, // 7
0x00,0x00,0x00,0x00,0x0F,0xF0,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1F,0x38,0x07,0xE0,0x07,0xE0,0x1C,0xF8,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x0F,0xF0,0x00,0x00,0x00,0x00, // 8
0x00,0x00,0x00,0x00,0x0F,0xF0,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1F,0xF8,0x0F,0xF8,0x00,0x38,0x00,0x38,0x00,0x70,0x00,0xE0,0x07,0xC0,0x00,0x00,0x00,0x00, // 9
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x03,0x80,0x03,0x80,0x00,0x00,0x00,0x00,0x03,0x80,0x03,0x80,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // :
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x03,0x80,0x03,0x80,0x00,0x00,0x00,0x00,0x03,0x80,0x03,0x80,0x03,0x80,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // ;
0x00,0x00,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x00,0x1C,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x00, // <
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFC,0x3F,0xFC,0x00,0x00,0x00,0x00,0x3F,0xFC,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // =
0x00,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x00,0x1C,0x00,0x00,0x00, // >
0x00,0x00,0x03,0xC0,0x0F,0xF0,0x1E,0x78,0x18,0x38,0x00,0x38,0x00,0x70,0x00,0xE0,0x01,0xC0,0x01,0xC0,0x00,0x00,0x00,0x00,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x00,0x00, // ?
0x00,0x00,0x0F,0xF8,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0xFC,0x1C,0xFC,0x1C,0xFC,0x1C,0xFC,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1F,0xF0,0x07,0xF8,0x00,0x00, // @
0x00,0x00,0x00,0x00,0x03,0xC0,0x07,0xE0,0x0E,0x70,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1F,0xF8,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // A
0x00,0x00,0x00,0x00,0x1F,0xF0,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0F,0xF0,0x0F,0xF0,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x1F,0xF0,0x00,0x00,0x00,0x00, // B
0x00,0x00,0x00,0x00,0x07,0xF0,0x0E,0x38,0x1C,0x38,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x38,0x0E,0x38,0x07,0xF0,0x00,0x00,0x00,0x00, // C
0x00,0x00,0x00,0x00,0x1F,0xE0,0x0E,0x70,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x70,0x1F,0xE0,0x00,0x00,0x00,0x00, // D
0x00,0x00,0x00,0x00,0x1F,0xF8,0x0E,0x18,0x0E,0x08,0x0E,0x00,0x0E,0x30,0x0F,0xF0,0x0F,0xF0,0x0E,0x30,0x0E,0x00,0x0E,0x08,0x0E,0x18,0x1F,0xF8,0x00,0x00,0x00,0x00, // E
0x00,0x00,0x00,0x00,0x1F,0xF8,0x0E,0x18,0x0E,0x08,0x0E,0x00,0x0E,0x30,0x0F,0xF0,0x0F,0xF0,0x0E,0x30,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x1F,0x00,0x00,0x00,0x00,0x00, // F
0x00,0x00,0x00,0x00,0x07,0xF0,0x0E,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1C,0xF8,0x1C,0x38,0x1C,0x38,0x0E,0x38,0x07,0xF8,0x00,0x00,0x00,0x00, // G
0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1F,0xF0,0x1F,0xF0,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x00,0x00,0x00,0x00, // H
0x00,0x00,0x00,0x00,0x0F,0xE0,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x0F,0xE0,0x00,0x00,0x00,0x00, // I
0x00,0x00,0x00,0x00,0x01,0xFC,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x38,0x70,0x38,0x70,0x38,0x70,0x38,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // J
0x00,0x00,0x00,0x00,0x1E,0x38,0x0E,0x38,0x0E,0x70,0x0E,0xE0,0x0F,0xC0,0x0F,0x80,0x0F,0x80,0x0F,0xC0,0x0E,0xE0,0x0E,0x70,0x0E,0x38,0x1E,0x38,0x00,0x00,0x00,0x00, // K
0x00,0x00,0x00,0x00,0x1F,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x08,0x0E,0x18,0x0E,0x38,0x1F,0xF8,0x00,0x00,0x00,0x00, // L
0x00,0x00,0x00,0x00,0x1C,0x1C,0x1E,0x3C,0x1F,0x7C,0x1F,0xFC,0x1F,0xFC,0x1D,0xDC,0x1C,0x9C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x00,0x00,0x00,0x00, // M
0x00,0x00,0x00,0x00,0x1C,0x1C,0x1C,0x1C,0x1E,0x1C,0x1F,0x1C,0x1F,0x9C,0x1D,0xDC,0x1C,0xFC,0x1C,0x7C,0x1C,0x3C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x00,0x00,0x00,0x00, // N
0x00,0x00,0x00,0x00,0x03,0xE0,0x07,0xF0,0x0E,0x38,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x0E,0x38,0x07,0xF0,0x03,0xE0,0x00,0x00,0x00,0x00, // O
0x00,0x00,0x00,0x00,0x1F,0xF0,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0F,0xF0,0x0F,0xF0,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x1F,0x00,0x00,0x00,0x00,0x00, // P
0x00,0x00,0x00,0x00,0x03,0xE0,0x0F,0x78,0x0E,0x38,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x7C,0x1C,0xFC,0x0F,0xF8,0x0F,0xF8,0x00,0x38,0x00,0xFC,0x00,0x00, // Q
0x00,0x00,0x00,0x00,0x1F,0xF0,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0F,0xF0,0x0F,0xF0,0x0E,0x70,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x1E,0x38,0x00,0x00,0x00,0x00, // R
0x00,0x00,0x00,0x00,0x0F,0xF0,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x00,0x0F,0xE0,0x07,0xF0,0x00,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x0F,0xF0,0x00,0x00,0x00,0x00, // S
0x00,0x00,0x00,0x00,0x1F,0xFC,0x19,0xCC,0x11,0xC4,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x07,0xF0,0x00,0x00,0x00,0x00, // T
0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // U
0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0E,0xE0,0x07,0xC0,0x03,0x80,0x00,0x00,0x00,0x00, // V
0x00,0x00,0x00,0x00,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x9C,0x1C,0x9C,0x1C,0x9C,0x0F,0xF8,0x0F,0xF8,0x07,0x70,0x07,0x70,0x00,0x00,0x00,0x00, // W
0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0E,0xE0,0x07,0xC0,0x03,0x80,0x03,0x80,0x07,0xC0,0x0E,0xE0,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x00,0x00,0x00,0x00, // X
0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0E,0xE0,0x07,0xC0,0x03,0x80,0x03,0x80,0x03,0x80,0x03,0x80,0x0F,0xE0,0x00,0x00,0x00,0x00, // Y
0x00,0x00,0x00,0x00,0x1F,0xF8,0x1C,0x38,0x18,0x38,0x10,0x70,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x08,0x1C,0x18,0x1C,0x38,0x1F,0xF8,0x00,0x00,0x00,0x00, // Z
0x00,0x00,0x00,0x00,0x07,0xF0,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0xF0,0x00,0x00,0x00,0x00, // [
0x00,0x00,0x00,0x00,0x10,0x00,0x18,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x07,0x00,0x00,0x00,0x00, // <Backslash>
0x00,0x00,0x00,0x00,0x07,0xF0,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x07,0xF0,0x00,0x00,0x00,0x00, // ]
0x00,0x00,0x01,0x80,0x03,0xC0,0x07,0xE0,0x0E,0x70,0x1C,0x38,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,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0x7F,0xFF, // _
0x00,0x00,0x00,0x00,0x1C,0x00,0x1C,0x00,0x07,0x00,0x07,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,0x0F,0xE0,0x00,0x70,0x00,0x70,0x0F,0xF0,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0F,0xD8,0x00,0x00,0x00,0x00, // a
0x00,0x00,0x00,0x00,0x1E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0F,0xF0,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x1B,0xF0,0x00,0x00,0x00,0x00, // b
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1C,0x70,0x1C,0x70,0x1C,0x00,0x1C,0x00,0x1C,0x70,0x1C,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // c
0x00,0x00,0x00,0x00,0x00,0xF8,0x00,0x70,0x00,0x70,0x00,0x70,0x0F,0xF0,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0F,0xD8,0x00,0x00,0x00,0x00, // d
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1C,0x70,0x1C,0x70,0x1F,0xF0,0x1C,0x00,0x1C,0x70,0x1C,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // e
0x00,0x00,0x00,0x00,0x03,0xE0,0x07,0x70,0x07,0x70,0x07,0x00,0x07,0x00,0x1F,0xE0,0x1F,0xE0,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x1F,0xC0,0x00,0x00,0x00,0x00, // f
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xD8,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0F,0xF0,0x07,0xF0,0x00,0x70,0x1C,0x70,0x0F,0xE0, // g
0x00,0x00,0x00,0x00,0x1E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0xF0,0x0F,0x38,0x0F,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x1E,0x38,0x00,0x00,0x00,0x00, // h
0x00,0x00,0x00,0x00,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x00,0x00,0x0F,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x0F,0xF8,0x00,0x00,0x00,0x00, // i
0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x00,0x03,0xF0,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x1C,0x70,0x0C,0xF0,0x07,0xE0, // j
0x00,0x00,0x00,0x00,0x1E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x38,0x0E,0x70,0x0E,0xE0,0x0F,0xC0,0x0E,0xE0,0x0E,0x70,0x0E,0x38,0x1E,0x38,0x00,0x00,0x00,0x00, // k
0x00,0x00,0x00,0x00,0x0F,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x0F,0xF8,0x00,0x00,0x00,0x00, // l
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x1C,0x9C,0x1C,0x9C,0x1C,0x9C,0x1C,0x9C,0x1C,0x9C,0x1C,0x9C,0x1C,0x9C,0x00,0x00,0x00,0x00, // m
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xE0,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x00,0x00,0x00,0x00, // n
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // o
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0xF0,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0F,0xF0,0x0E,0x00,0x0E,0x00,0x1F,0x00, // p
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xB0,0x38,0xE0,0x38,0xE0,0x38,0xE0,0x38,0xE0,0x38,0xE0,0x1F,0xE0,0x00,0xE0,0x00,0xE0,0x01,0xF0, // q
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0xF0,0x0F,0xF8,0x0F,0x38,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x1F,0x00,0x00,0x00,0x00,0x00, // r
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1C,0x30,0x1C,0x30,0x0F,0x80,0x03,0xE0,0x18,0x70,0x18,0x70,0x0F,0xE0,0x00,0x00,0x00,0x00, // s
0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x03,0x00,0x07,0x00,0x1F,0xF0,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x70,0x07,0x70,0x03,0xE0,0x00,0x00,0x00,0x00, // t
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0F,0xD8,0x00,0x00,0x00,0x00, // u
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x1C,0x70,0x0E,0xE0,0x07,0xC0,0x03,0x80,0x00,0x00,0x00,0x00, // v
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x9C,0x1C,0x9C,0x0F,0xF8,0x07,0x70,0x07,0x70,0x00,0x00,0x00,0x00, // w
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0xE0,0x1C,0xE0,0x0F,0xC0,0x07,0x80,0x07,0x80,0x0F,0xC0,0x1C,0xE0,0x1C,0xE0,0x00,0x00,0x00,0x00, // x
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x07,0xF0,0x03,0xE0,0x00,0xE0,0x01,0xC0,0x1F,0x80, // y
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xE0,0x18,0xE0,0x11,0xC0,0x03,0x80,0x07,0x00,0x0E,0x20,0x1C,0x60,0x1F,0xE0,0x00,0x00,0x00,0x00, // z
0x00,0x00,0x00,0x00,0x01,0xF8,0x03,0x80,0x03,0x80,0x03,0x80,0x07,0x00,0x1C,0x00,0x1C,0x00,0x07,0x00,0x03,0x80,0x03,0x80,0x03,0x80,0x01,0xF8,0x00,0x00,0x00,0x00, // {
0x00,0x00,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x00,0x00, // |
0x00,0x00,0x00,0x00,0x1F,0x80,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x00,0xE0,0x00,0x38,0x00,0x38,0x00,0xE0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x1F,0x80,0x00,0x00,0x00,0x00, // }
0x00,0x00,0x00,0x00,0x1F,0x1C,0x3B,0x9C,0x39,0xDC,0x38,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // ~
0x00,0x00,0x00,0x00,0x1F,0xF8,0x1F,0xF8,0x0E,0x38,0x0E,0x00,0x0E,0x00,0x0F,0xF0,0x0F,0xF8,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x1F,0xF8,0x1F,0xF0,0x00,0x00,0x00,0x00, // Б
0x00,0x00,0x00,0x00,0x1F,0xF8,0x1F,0xF8,0x0E,0x38,0x0E,0x38,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x1F,0x00,0x1F,0x00,0x00,0x00,0x00,0x00, // Г
0x00,0x00,0x00,0x00,0x0F,0xF0,0x0F,0xF0,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x1F,0xF8,0x1F,0xF8,0x1C,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // Д
0x06,0x60,0x00,0x00,0x1F,0xF8,0x1F,0xF8,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1F,0x80,0x1F,0x80,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x1F,0xF8,0x1F,0xF8,0x00,0x00,0x00,0x00, // Ё
0x00,0x00,0x00,0x00,0x19,0x98,0x19,0x98,0x1D,0xB8,0x0F,0xF0,0x07,0xE0,0x03,0xC0,0x07,0xE0,0x0F,0xF0,0x1D,0xB8,0x19,0x98,0x19,0x98,0x19,0x98,0x00,0x00,0x00,0x00, // Ж
0x00,0x00,0x00,0x00,0x07,0xE0,0x0F,0xF0,0x1C,0x78,0x18,0x38,0x00,0x70,0x01,0xE0,0x01,0xE0,0x00,0x70,0x18,0x38,0x1C,0x78,0x0F,0xF0,0x07,0xE0,0x00,0x00,0x00,0x00, // З
0x00,0x00,0x00,0x00,0x1C,0x38,0x1C,0x38,0x1C,0x78,0x1C,0xF8,0x1D,0xF8,0x1F,0xF8,0x1F,0xB8,0x1F,0x38,0x1E,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // И
0x00,0x00,0x01,0x80,0x1C,0x38,0x1C,0x38,0x1C,0x78,0x1C,0xF8,0x1D,0xF8,0x1F,0xF8,0x1F,0xB8,0x1F,0x38,0x1E,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // Й
0x00,0x00,0x00,0x00,0x01,0xF8,0x03,0xF8,0x03,0xB8,0x07,0x38,0x07,0x38,0x07,0x38,0x0E,0x38,0x0E,0x38,0x0E,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // Л
0x00,0x00,0x00,0x00,0x1F,0xF8,0x1F,0xF8,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // П
0x00,0x00,0x00,0x00,0x07,0xE0,0x0F,0xF0,0x1D,0xB8,0x19,0x98,0x19,0x98,0x19,0x98,0x1D,0xB8,0x0F,0xF0,0x07,0xE0,0x01,0x80,0x01,0x80,0x01,0x80,0x00,0x00,0x00,0x00, // Ф
0x00,0x00,0x00,0x00,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x1C,0x78,0x1F,0xFC,0x0F,0xCC,0x00,0x00,0x00,0x00, // Ц
0x00,0x00,0x00,0x00,0x18,0x38,0x18,0x38,0x18,0x38,0x18,0x38,0x18,0x38,0x18,0x38,0x18,0x38,0x1C,0x38,0x0F,0xF8,0x07,0xF8,0x00,0x38,0x00,0x38,0x00,0x38,0x00,0x00, // Ч
0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x19,0x98,0x19,0x98,0x19,0x98,0x19,0x98,0x19,0x98,0x1F,0xF8,0x1F,0xF8,0x00,0x00,0x00,0x00, // Ш
0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x19,0x98,0x19,0x98,0x19,0x98,0x19,0x98,0x19,0x98,0x1F,0xFE,0x1F,0xFE,0x00,0x06,0x00,0x00, // Щ
0x00,0x00,0x00,0x00,0x1E,0x00,0x1E,0x00,0x1E,0x00,0x06,0x00,0x06,0x00,0x07,0xF0,0x07,0xF8,0x06,0x18,0x06,0x18,0x06,0x18,0x07,0xF8,0x07,0xF0,0x00,0x00,0x00,0x00, // Ъ
0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x1F,0x18,0x1F,0x98,0x19,0xD8,0x18,0xD8,0x18,0xD8,0x19,0xD8,0x1F,0x98,0x1F,0x98,0x00,0x00,0x00,0x00, // Ы
0x00,0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0F,0xE0,0x0F,0xF0,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0F,0xF0,0x0F,0xE0,0x00,0x00,0x00,0x00, // Ь
0x00,0x00,0x00,0x00,0x07,0xE0,0x0F,0xF0,0x1C,0x38,0x18,0x18,0x00,0x18,0x01,0xF8,0x01,0xF8,0x00,0x18,0x18,0x18,0x1C,0x38,0x0F,0xF0,0x07,0xE0,0x00,0x00,0x00,0x00, // Э
0x00,0x00,0x00,0x00,0x18,0xE0,0x19,0xF0,0x1B,0xB8,0x1B,0x18,0x1B,0x18,0x1F,0x18,0x1F,0x18,0x1B,0x18,0x1B,0x18,0x1B,0xB8,0x19,0xF0,0x18,0xE0,0x00,0x00,0x00,0x00, // Ю
0x00,0x00,0x00,0x00,0x07,0xF8,0x0F,0xF8,0x1E,0x38,0x1C,0x38,0x1C,0x38,0x1E,0x38,0x0F,0xF8,0x07,0xF8,0x03,0xB8,0x0F,0x38,0x1E,0x38,0x1C,0x38,0x00,0x00,0x00,0x00, // Я
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF0,0x0F,0xF0,0x0C,0x00,0x0C,0x00,0x0F,0xE0,0x0F,0xF0,0x0C,0x30,0x0C,0x30,0x0F,0xF0,0x0F,0xE0,0x00,0x00,0x00,0x00, // б
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xC0,0x0F,0xC0,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00, // г
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x0F,0xF0,0x0F,0xF0,0x0C,0x30,0x00,0x00,0x00,0x00, // д
0x00,0x00,0x00,0x00,0x06,0x60,0x00,0x00,0x0F,0xF0,0x0F,0xF0,0x0C,0x00,0x0C,0x00,0x0F,0x80,0x0F,0x80,0x0C,0x00,0x0C,0x00,0x0F,0xF0,0x0F,0xF0,0x00,0x00,0x00,0x00, // ё
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0D,0xB0,0x0D,0xB0,0x0D,0xB0,0x07,0xE0,0x03,0xC0,0x03,0xC0,0x07,0xE0,0x0D,0xB0,0x0D,0xB0,0x0D,0xB0,0x00,0x00,0x00,0x00, // ж
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x07,0xE0,0x0C,0x30,0x0C,0x30,0x00,0xE0,0x00,0xE0,0x0C,0x30,0x0C,0x30,0x07,0xE0,0x03,0xC0,0x00,0x00,0x00,0x00, // з
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x70,0x0C,0xF0,0x0D,0xB0,0x0F,0x30,0x0E,0x30,0x0C,0x30,0x0C,0x30,0x00,0x00,0x00,0x00, // и
0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x70,0x0C,0xF0,0x0D,0xB0,0x0F,0x30,0x0E,0x30,0x0C,0x30,0x0C,0x30,0x00,0x00,0x00,0x00, // й
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0xF0,0x01,0xB0,0x01,0xB0,0x03,0x30,0x03,0x30,0x06,0x30,0x06,0x30,0x0C,0x30,0x0C,0x30,0x00,0x00,0x00,0x00, // Л
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF0,0x0F,0xF0,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x00,0x00,0x00,0x00, // п
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x07,0xE0,0x0D,0xB0,0x09,0x90,0x09,0x90,0x0D,0xB0,0x07,0xE0,0x03,0xC0,0x01,0x80,0x01,0x80,0x00,0x00,0x00,0x00, // ф
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x60,0x0C,0x60,0x0C,0x60,0x0C,0x60,0x0C,0x60,0x0C,0x60,0x0C,0x60,0x0C,0x60,0x0E,0xF0,0x07,0xD0,0x00,0x00,0x00,0x00, // ц
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0F,0xF0,0x07,0xF0,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00, // ч
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0D,0xB0,0x0D,0xB0,0x0D,0xB0,0x0F,0xF0,0x0F,0xF0,0x00,0x00,0x00,0x00, // ш
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0D,0xB0,0x0D,0xB0,0x0D,0xB0,0x0F,0xFC,0x0F,0xFC,0x00,0x0C,0x00,0x00, // щ
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x0E,0x00,0x06,0x00,0x06,0x00,0x07,0xC0,0x07,0xE0,0x06,0x30,0x06,0x30,0x07,0xE0,0x07,0xC0,0x00,0x00,0x00,0x00, // ъ
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0F,0x30,0x0F,0xB0,0x0C,0xB0,0x0C,0xB0,0x0F,0xB0,0x0F,0x30,0x00,0x00,0x00,0x00, // ы
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0F,0xE0,0x0F,0xF0,0x0C,0x30,0x0C,0x30,0x0F,0xF0,0x0F,0xE0,0x00,0x00,0x00,0x00, // ь
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x06,0x60,0x0C,0x30,0x08,0x10,0x00,0xF0,0x00,0xF0,0x08,0x10,0x0C,0x30,0x06,0x60,0x03,0xC0,0x00,0x00,0x00,0x00, // э
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x40,0x0C,0xE0,0x0D,0xB0,0x0D,0x10,0x0F,0x10,0x0F,0x10,0x0D,0x10,0x0D,0xB0,0x0C,0xE0,0x0C,0x40,0x00,0x00,0x00,0x00, // ю
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xF0,0x06,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x07,0x10,0x01,0xF0,0x03,0x10,0x06,0x10,0x0C,0x10,0x00,0x00,0x00,0x00, // я
};
// SevenSegNumFont.c
// Font Size : 32x50
// Memory usage : 2004 bytes
// # characters : 10
fontdatatype SevenSegNumFont[2004] PROGMEM={
0x20,0x32,0x30,0x0A,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x60,0x0C,0xFF,0xFE,0xF0,0x1E,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3E,0x00,0x00,0x78,0x38,0x00,0x00,0x18,0x20,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x38,0x00,0x00,0x18,0x3E,0x00,0x00,0x78,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x1E,0x00,0x00,0xF0,0x0C,0xFF,0xFE,0x60,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0xF0,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 1
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x60,0x00,0xFF,0xFE,0xF0,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0x78,0x01,0xFF,0xFE,0x18,0x03,0xFF,0xFF,0x88,0x0F,0xFF,0xFF,0xE0,0x27,0xFF,0xFF,0xC0,0x39,0xFF,0xFF,0x00,0x3E,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x0C,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 2
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x60,0x00,0xFF,0xFE,0xF0,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0x78,0x01,0xFF,0xFE,0x18,0x03,0xFF,0xFF,0x88,0x0F,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xC0,0x01,0xFF,0xFF,0x18,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xF0,0x00,0xFF,0xFE,0x60,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,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,0x60,0x0C,0x00,0x00,0xF0,0x1E,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3E,0x00,0x00,0x78,0x39,0xFF,0xFE,0x18,0x23,0xFF,0xFF,0x88,0x0F,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xC0,0x01,0xFF,0xFF,0x18,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x60,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,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x0C,0xFF,0xFE,0x00,0x1E,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x39,0xFF,0xFE,0x00,0x23,0xFF,0xFF,0x80,0x0F,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xC0,0x01,0xFF,0xFF,0x18,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xF0,0x00,0xFF,0xFE,0x60,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 5
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x0C,0xFF,0xFE,0x00,0x1E,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x39,0xFF,0xFE,0x00,0x23,0xFF,0xFF,0x80,0x0F,0xFF,0xFF,0xE0,0x27,0xFF,0xFF,0xC0,0x39,0xFF,0xFF,0x18,0x3E,0x00,0x00,0x78,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x1E,0x00,0x00,0xF0,0x0C,0xFF,0xFE,0x60,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 6
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x60,0x00,0xFF,0xFE,0xF0,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x60,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,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x60,0x0C,0xFF,0xFE,0xF0,0x1E,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3E,0x00,0x00,0x78,0x39,0xFF,0xFE,0x18,0x23,0xFF,0xFF,0x88,0x0F,0xFF,0xFF,0xE0,0x27,0xFF,0xFF,0xC0,0x39,0xFF,0xFF,0x18,0x3E,0x00,0x00,0x78,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x1E,0x00,0x00,0xF0,0x0C,0xFF,0xFE,0x60,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 8
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x00,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x60,0x0C,0xFF,0xFE,0xF0,0x1E,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3F,0x00,0x01,0xF8,0x3E,0x00,0x00,0x78,0x39,0xFF,0xFE,0x18,0x23,0xFF,0xFF,0x88,0x0F,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xC0,0x01,0xFF,0xFF,0x18,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xF0,0x00,0xFF,0xFE,0x60,0x01,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x80,0x01,0xFF,0xFF,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 9
};
А что это первая строчка в массиве BigFont заремарена? Там же параметры фонта, получается, что программа вместо них читает нули...
Кириллицу в библиотеку UTFT я добавлял (статья по ссылке - моя). К сожалению, руки не дошли до шрифтов большего размера.
Первую строчку в массиве для большого шрифта зря закомментарили - обязательно раскомментировать и поставить туда правильные данные (количество символов в шрифте, размеры, смещение). После этого можно уже добавить нужные символы (предварительно их подготовить) и все будет работать.
ustas, спасибо, я долго рисовал символы, видимо глаз замылился и незаметил коментарий)))
Там все недостающие знаки отрисовал, можно добавить в статью если сочтете нужным.
ustas, Еще бы хотелось уточнить, вы привели пример начертания буквы "б" - 150
Хотелось бы знать откуда это значение берется?
Otheral, если отрисовали большой шрифт - делитесь :) с удовольствием размещу в статье и объединю оба шрифта (естественно, с указанием авторства).
по поводу кода - там все просто. Смотрим параметр "смещение" - это будет код первого символа, а дальше просто увеличивайте код на единицу для последующего символа и т.д.
ustas, Сегодня подправлю буквы, чтоб смотрелись все в одном стиле и к вечеру Вам выложу. Куда лучше скинуть?
выложите на какой-нибудь файлообменник и опубликуйте тут ссылочку - я заберу (и тут отпишусь, что все в порядке)
Готовый, полный латинский + кирелический шрифт
*.c - непосредственно сам шрифт
Начертание символов в соответствующем файле, можно править как захотите.
Кирелический шрифт, там описание отрисовки и 16ричные номера букв.
http://files.mail.ru/443D14FFC5F94AE1B7628E34D540C2F9
ustas, вы смотрели файлы? все работает?
есть такая програ - GLCD Font Creator. Позволяет экспортировать системные шрифты в .с файлы для дисплеев.. работает немного кривовато с английским буквами, русские же символы отображает иероглифами. Но, как редактор думаю сойдет. Пока не проверял ее, другим занят, но уже скоро придется, если не найду чей-н подходящий шрифт. \
И, куда подевалась русская буква А в том что у вас тут? или я ее не вижу где-то...
glcd font creator до изумления крива, и в качестве шрифта выдает полную чушь, ее только как визуализатор использовать при рисовании символа. Пользуйтесь файлами которые я выложил, там вполне нормальные символы. Если вам там какой то символ не нравится, напишите, я исправлю.
Через какое то время я сделаю шрифт еще побольше. Буква А как бы не нужна т.к. есть ее английский аналог A...
буду знать что прога кривая! но надо все ж проверить на всякий случай, вдруг последняя версия нормальная.
а всего лишь одна буква много памяти не съест.. зато на порядок удобней без всяких подстановок.
Прога кривая, выдает файл в котором совсем не то, что в дефолтном. Ну сами увидите в общем))))
Не в памяти дело, дело в том что, зачем рисовать букву, если она уже есть, в статье ustas'а все довольно неплохо описано, если что то не понятно, можно у меня уточнить или у него.
От подстановок символов в 16-ричной или латинской кодировке не отойти в силу того, что по умолчанию библиотека UTFT не поддерживает кирилические шрифты. Чтобы полноценно разобраться в этом вопросе, нужно перелопатить вобще всю библиотеку UTFТ.
Кстати, при использовании этой библиотеки наверное не стоит говорить о памяти вообще, т.к. проги для ардуины не всегда превышают размер памяти Ардуино МЕГА, а на других не считаю целесообразным использовать тачскрин, т.к. обычно даже тестовая программа превышает допустимый размер УНО. (У меня экран с тачскрином по этому данное рассуждение для тача))))
В библиотеке UTFT просто byte используется для хранения символа, вот кусок кода из нее:
void UTFT::printChar(byte c, int x, int y) { byte i,ch; word j; word temp; cbi(P_CS, B_CS); if (!_transparent) { if (orient==PORTRAIT) { setXY(x,y,x+cfont.x_size-1,y+cfont.y_size-1); temp=((c-cfont.offset)*((cfont.x_size/8)*cfont.y_size))+4; for(j=0;j<((cfont.x_size/8)*cfont.y_size);j++) { ch=pgm_read_byte(&cfont.font[temp]); for(i=0;i<8;i++) { if((ch&(1<<(7-i)))!=0) { setPixel((fch<<8)|fcl); } else { setPixel((bch<<8)|bcl); } } temp++; } }Вопрос в том, что в этот байт запишет компилятор ардуины. а в нем копаться это вообще жесть наверно полнейшая)) дуины сейчас нет под руками, так бы глянул ради интереса, что ж на экране получится если шрифт поставить с русскими буквами, и просто в print написать кириллицу. Компилятор кстати не ругается. Если по-нормальному пока никак, то что ж тогда, каждую букву кодом заменять? жуть какая, хоть и просто это автоматизировать..
Ну обычно в проектах не много слов)))) так что конкретно для меня это вобще не проблема, я дописывал шрифт исключительно из-за того что проект начал выходить из протатипа в конечное устройство, которое нужно уже показывать людям.
Otheral!
Приведи пожалуста пример использования библиотеки с кирилицей
В ссылке http://devicter.blogspot.ru/2013/03/rusUTFT-SmallFont.html
приводится пример:
myGLCD.print("/x97""o""/x99""a", x, y); // вода
У меня на дисплее получается x97o/x99a
Не ругай сильно - я начинающий
Может попробовать
myGLCD.print("\x97""o""\x99""a", x, y); // вода
AlexFisher !
Спасибо !!!!!!!
Получилось!
Ну почему дают примеры с ошибками!
Примеры с ошибками - чтобы на них учиться ;) Здесь нужно помнить, что обратный слешь в строковой константе - признак спецсимвола (например, \0 обозначает символ с кодом 0, \n - новая строка). Если нужно вывести обратный слешь, то его нужно 2 раза написать, вот так: \\
Ок
ХЕЛПППППППППППП!!!!!!!!!!
Подключал моник -всё работало с кириллицей. Устанавил ардуино на другой комп -перестало работать (типо ероглифы)
С первого компа -перекачал всю папку -libraries. Результат тот же -ероглифы.
Перенес платку на первый комп,залил с него -все работает нормуль -русские буквы.
Где касяк ? Разница в операционках и в пути установки программы. на одном чистый программ файлс, на не рабочем -соответственно програмс файлс 32.
Дистрибутив программы 1.0.5
Копируйте весь дистрибутив целиком. А так у вас на другом компе выдает другую кодировку похоже. Я и на 64 винде работал и на 32 - разницы не было, но дистрибутив я через яндекс диск синхрю. Так что поэтому вывод - что-то у вас разное в дистрибутивах. Еще конечно от винды может зависеть - в постпроцессоре юникод менается на escape коды этих символов что не всегда может корректно обрабатываться в ос более ранних версий чем Vista.
так что смотрите обработанный исходник в папке с бинарником.
можно по подробней ????? Скопировал полностью всю папку дистрибутива -вместе с проектом. Результат тот же.
наконец-то дошли руки до BigFont: http://devicter.blogspot.ru/2013/11/utft-2-bigfont.html
Я в свое время не нашёл годной на мой взгляд библиотеки.
Я конечно не претендую на то что мой вариант годен, но меня он устраивает. Я тут намешал из разных источников, главное для меня что получилось удобно.
Ссылка на скачивание :
https://yadi.sk/d/uCejM7HW3PRhFn
На основе библиотеки utft от ринки-динки, всё остальное на месте.
Функция используется стандартная - print
В строке можно пихать в перемешку английские и русские символы.
Я дилетант, критику принимаю легко так как переделывать всё равно вам.
Выкладываю на случай если кто то будет искать как я год назад искал, может быть понравится.
BoozZzilla прекрасная работа , спасибо за изменёную библиотеку , как то она проще работает , чем оригинал . Но вот вопрос
1 как уменьшить ширину буквы (вернее между буквами ) сам шрифт избыточный (в смысле кодировки) есть пустые места , и их используют как растояние между буквами , на самом деле малый шрифт 5*8 , вернее 6*8 , в данном Вашем примере (и в utft) сделанно 8*8 и кодировка по горизонтали . при кодировании по вертикали можно просто задать 6 столбцов , и их потом считывать , Вывод (как я понял) производит printChar с кучей наваротов , и в конечном результате setPixel выводит пиксели (для 8*8) , как правильно организовать вывод шрифта ?
2 Как поведйт Ваша библиотека при выводе строки принятой от ком порта в стандарте asii с руской кодировкой , где буква я имеет код 0xff? ide Arduino для ввода текста в скейч имеет 2 варианта -
1 однобайтный для английского и 2 байтный для второй половины ASII таблицы , где распологаются шрифту других языкоа ,
2 однобайтный для всех знаков в поле 0х00 -0xFF
при попытке вывести сообщение принятое от ком порта (ФЫВАПРО REWQ) стандартной кодировкой руские буквы выводятся кракозябрами (видимо код , лежащий дальше за таблицей шрифта )
svetodiod, ASCII - 7-битная кодировка, не содержащая символов кириллицы. У нее есть расширение до 8 бит, но ни о каких двухбайтовых стимволах в ASCII и речи быть не может.
svetodiod попробуйте мое дополнение для UTFT с поддержкой шрифтов любой ширины и собственным компактным форматом. в описании ссылка на редактор шрифтов с возможностью смены кодировки. соответствие кодировок Win-1251, ASCII-866 и KOI8-20866 между собой уже прописано, любую другую можете добавить сами. вот хороший ресурс с таблицами кодировок. на форуме есть тема по руссификации Adafruit, описанная там функция utf8rus применима и здесь на шрифте с кодировкой 1251
andriano ide Arduino для ввода текста в скейч имеет 2 варианта -
1 однобайтный для английского и 2 байтный для второй половины ASII таблицы , где распологаются шрифту других языкоа ,
2 однобайтный для всех знаков в поле 0х00 -0xFF
andriano ide Arduino для ввода текста в скейч имеет 2 варианта -
1 однобайтный для английского и 2 байтный для второй половины ASII таблицы , где распологаются шрифту других языкоа ,
2 однобайтный для всех знаков в поле 0х00 -0xFF
Кто Вам сказал эту глупость?
Плюньте ему в глаза!
Arduino IDE по умолчанию использует кодировку utf-8. К таблице семибитной кодировки ASCII она никакого отношения не имеет (за исключения совпадения кодов первых 127 символов). В остальном - эти кодирокви основаны на разных принципах: ASCII - фиксированной длины, семибитная, а utf-8 - с переменной длиной символа (от 1 до 6 байтов). Кстати, Вы уже второй раз подряд неправильно пишете: "ASII". Правильно "ASCII" - American Standard Code for Information Interchange.
ну плевать не надо , пригодится
извеняюсь за ASCII
открываем http://foxtools.ru/ASCII#1251 смотрим - буква я русского языка имеет номер 255 или 0хFF , в рускоязычных ОС , если нет , программисты шаманили
берём пример UTFT_Rus_Fonts (из BoozZzilla топ 25 https://yadi.sk/d/uCejM7HW3PRhFn) , модифицируем
ну плевать не надо , пригодится
извеняюсь за ASCII
открываем http://foxtools.ru/ASCII#1251 смотрим - буква я русского языка имеет номер 255 или 0хFF , в рускоязычных ОС , если нет , программисты шаманили
берём пример UTFT_Rus_Fonts (из BoozZzilla топ 25 https://yadi.sk/d/uCejM7HW3PRhFn) , модифицируем
1. То, что буква "я" в кодировке CP1251 имеет номер 255 никто сомнению подвергать не собирается. Но, вообще говоря, для аргументации принято пользоваться более надежными источниками, чем foxtools.ru. Да и в русскоязычных ОС никто не обязывал пользоваться именно этим творением Майкрософт. Использовались и КОИ-7, и КОИ-8, и "кодировка ГОСТ", и "Альтернативная кодировка ГОСТ" (которая позднее получила название CP866), в особенности ДО появления CP1251 (Вы же не будете утверждать, что именно Майкрософт написала первую в Мире ОС?).
2. Не нужно ни брать пример, ни модифицировать его. Нужно разобраться с кодировками, чтобы на основании отдельных частных случаев не делать неверных обобщающих выводов.
3. По поводу неполноценной русификации полностью согласен. В моей библиотечке http://arduino.ru/forum/proekty/asoled-kompaktnaya-biblioteka-dlya-oled-displeya-128kh64-s-kirillitsei-utf-8 русификация тоже не совсем полноценная, но тут уж я искал баланс между качеством русификации и расходуемыми ресурсами. Впрочем, попробуйте, может Вам понравится.
andriano
ответ на 2 - никто не нервничает но вот, о том что," однобайтный для английского и 2 байтный для второй половины ,,," думаю Вы признаете .
Далее почему возник интерес к данной теме . У меня есть прибор , где стоит чёрно-белый жки 320*240 ATmega2650 esp8266-01, программа писалась на ассемблере года 4 назад с поднятием web сервера.Таких индикаторов сейчас нет , а надо новый приборчик , хочется попробовать websocets esp8266-12. подвернулся под руки tft_320qvt_9341 и 2,8 tft spi 240*320. На ассемблере , для старого индикатора никаких проблем с выводом букв 3 языков не возникали , только при работе web сервером приходилось вылавливать символ % перед не английскими , вернее выше чем 0x7f символы , и некоторые символы и буквы , а тут просто не возможно вывести символ из таблицы без бубна , как в utft так и на adafruit одни и те же проблемы с выводом руских букв ладно это лирика
Я предпологаю , что функция , которая берёт данные из таблици написана коряво , не учитывая что таблица может быть больше , хотя в adafruit она может прочитать , но функции работы с символами и строками , тоже не нормально работатют,с английскими проблем нет . в adafruit сделали возможность вывода по своему , и она как то быстрей работает , но там нет потдержки tft_320qvt_9341 с паралельной шиной . но как это изменить ? В си и виренге я не очень большой знаток , больше ассемблер АВR
как и предпологалось , проблема в функциях вывода строк .
printChar справяется с задачей вывода любых символов , строим таблицу хоть на 256 знаков , выводим букву в виде байта или строим массив из байтов , и printChar прекрасно выводит хоть одну , хоть в цикле , НО , нельзя в ide arduno явно вводить буквы в printChar , так как она их поймёт как Char да ещё(для символов выше 127 )добавит с переди байт , а printChar может работать только с 1 байтом , все прелести высокоуровнего языка проподают , или надо написать "заплатку" типа printChar(mayAsscii('ф',x,y),в отличии от этого в AVR студии ,на ассемблере ,такого не возникает , и там как вписал символ , так он и отображается . А вот вывод строк print() можно или забыть , или перелепить ,вставив функцию или команды вылавливания не " ASCII (7 бит) " символов , строя массив байтов из строки без всякого мусора,и далее как и ранше вывести через printChar этот масив . В Arduino (языке) работа с строками , как классом, завязанна ASCII (7 бит) какие нибудь попытки выводить через них что хочеш , не получатся , даже Serial.print , не передаст байт корректно , для этого есть Serial.write() но он не работает с кольцевым буфером отправки , то есть будет выполнятся , пока не выведет полностью все символы , ещё одно не удобство , отрезан сильнейший механизм асинхронной дву направленной передачи данных с использованием прерываний по приёму и передачи , тем самым освобождая время для основной программы
ответ на 2 - никто не нервничает но вот, о том что," однобайтный для английского и 2 байтный для второй половины ,,," думаю Вы признаете .
... У меня есть прибор , где стоит чёрно-белый жки... а надо новый приборчик...
...приходилось вылавливать символ % перед не английскими , вернее выше чем 0x7f символы...
В си и виренге я не очень большой знаток , больше ассемблер АВR
1. svetodiod, Вы меня обижаете предположением, что я могу признавать такую чушь. Вы сами придете к такому выводу, если попытаетесь объяснить, о "второй половине" ЧЕГО именно идет речь в этом фрагменте.
2. Вы не можете добиться успеха по простой причине - у Вас в голове все перевернуто с ног на голову: Вы считаете, что кодировка первична, а символы - вторичны. Об этом говорит фраза "выше чем 0x7f символы". Ну нет никаких символов "выше чем 0x7f". Нет у символа такой характеристики, как число. От слова совсем.
Символы - первичны. Но они могут быть закодированы числами. Притом как самих таких кодировок, так и способов кодирования - несколько. Поэтому говорить о диапазоне чисел без указания конкретной кодировки - абсурдно.
3. Собственно, чтобы добиться успеха в сопряжении двух устройств, Вам нужно сделать несколько совершенно типичных шагов:
- выяснить, в какой кодировке работает передающее устройство,
- выяснить, какая кодировка нужна принимающему устройству,
- перекодировать при передаче из одной кодировке в другую.
Этот способ единственно правильный, а потому безусловно обреченный на успех.
4. Ассемблер и Си равномощны, т.е. то, что можно сделать чем-то на одном, можно сделать и на другом и наоборот.
Тут был мой фэйл =)
Если есть модератор то можно удалить.
Тут такое дело - я сам столкнулся с тем что кодировку 1251 не выводит, в связи с чем переделал переделку. Теперь принимает как UTF-8 так и 1251 Windows
Если есть желание и время можно проверить опять с сообщениями с ком порта, должно работать.
Новая ссылка на скачивание: https://yadi.sk/d/Qudb4bpa3WdSJo
Старую версию удаляю, больше не доступна.
Ширину буквы уменьшать я не собираюсь, это просто изменение стандартной UTFT от Rinky-Dinky, переписывать его функции у меня не хватит знаний.
Ещё раз поясняю - это не для тех кому надо круто или надо сэкономить место, это для тех кому надо удобно и лень самому разбираться или не хватает знаний.
А можно как-нибудь организовать дело так, чтобы не приходилось править библиотеку UTFT? Чтобы "русификатор" лежал в отдельных файлах ( в виде отдельной библиотеки), на которые просто дается ссылка в скетче. Тогда не придется каждый раз при обновлении UTFT ее править. Ну и людям удобнее - добавил файлы и можно работать.